Re: Triple parity and beyond

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all -- no real comments, except as I mentioned to Ric, my tutorial in FAST last February presents Reed-Solomon coding with Cauchy matrices, and then makes special note of the common pitfall of assuming that you can append a Vandermonde matrix to an identity matrix.  Please see http://web.eecs.utk.edu/~plank/plank/papers/2013-02-11-FAST-Tutorial.pdf, slides 48-52.

Andrea, does the matrix that you included in an earlier mail (the one that has Linux RAID-6 in the first two rows) have a general form, or did you develop it in an ad hoc manner so that it would include Linux RAID-6 in the first two rows?

Best wishes -- Jim
----------

On Nov 19, 2013, at 3:29 PM, Ric Wheeler wrote:

> On 11/19/2013 12:28 PM, Andrea Mazzoleni wrote:
>> Hi Peter,
>> 
>> Yes, 251 disks for 6 parity.
>> 
>> To build a NxM Cauchy matrix you need to pick N+M distinct values
>> in the GF(2^8) and we have only 2^8 == 256 available.
>> This means that for every row we add for an extra parity level, we
>> have to remove one of the disk columns.
>> 
>> Note that in true, I use an Extended Cauchy matrix that gives the
>> first row of 1 for "free". This results in N+M <= 256+1.
>> So, DISKS = 257 - PARITY -> 251 = 257 - 6
>> 
>> A brief introduction of Cauchy and Extended Cauchy matrix can be found in:
>> 
>> Vinocha, "On Generator Cauchy Matrices of GDRS/GTRS Codes", 2012
>> http://www.m-hikari.com/ijcms/ijcms-2012/45-48-2012/brarIJCMS45-48-2012.pdf
>> (just check the Introduction, the rest is not related)
>> 
>> More details can be found in:
>> 
>> Roth, "Introduction to Coding Theory", 2006
>> http://carlossicoli.free.fr/R/Roth_R.-Introduction_to_coding_theory-Cambridge_University_Press%282006%29.pdf
>> (search for "Extended Cauchy")
>> 
>> Ciao,
>> Andrea
> 
> Great work - we have waited a long time for this. Adding in Jim Plank who did some great talks and work in this area as well :)
> 
> Ric
> 
>> 
>> On Tue, Nov 19, 2013 at 12:25 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
>>> On 11/18/2013 02:35 PM, Andrea Mazzoleni wrote:
>>>> Hi Peter,
>>>> 
>>>> The Cauchy matrix has the mathematical property to always have itself
>>>> and all submatrices not singular. So, we are sure that we can always
>>>> solve the equations to recover the data disks.
>>>> 
>>>> Besides the mathematical proof, I've also inverted all the
>>>> 377,342,351,231 possible submatrices for up to 6 parities and 251 data
>>>> disks, and got an experimental confirmation of this.
>>>> 
>>> Nice.
>>> 
>>>> The only limit is coming from the GF(2^8). You have a maximum number
>>>> of disk = 2^8 + 1 - number_of_parities. For example, with 6 parities,
>>>> you can have no more of 251 data disks. Over this limit it's not
>>>> possible to build a Cauchy matrix.
>>>> 
>>> 251?  Not 255?
>>> 
>>>> Note that instead with a Vandermonde matrix you don't have the
>>>> guarantee to always have all the submatrices not singular. This is the
>>>> reason because using power coefficients, before or late, it happens to
>>>> have unsolvable equations.
>>>> 
>>>> You can find the code that generate the Cauchy matrix with some
>>>> explanation in the comments at (see the set_cauchy() function) :
>>>> 
>>>> http://sourceforge.net/p/snapraid/code/ci/master/tree/mktables.c
>>> OK, need to read up on the theoretical aspects of this, but it sounds
>>> promising.
>>> 
>>>         -hpa
>>> 
>>> 
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux