On 06/09/2010 05:05 PM, Piergiorgio Sartor wrote: > Hi folks, > > I just noticed that mdadm 3.1.x sets the default > bitmap chunk to 64MB. > > Searching around, I found the reason should be > related with write performances, which seem to > be less compromised with large bitmap chunks. > > I've no problem with that, but is it possible > to set the bitmap chunk to the minimum size, > without trying all the possible dimensions? > > Thanks a lot in advance, > > bye, > This depends somewhat on what you mean by "minimum size" to the bitmap chunk. The bitmap chunk size can never be smaller than the minimum size on the device, so 512bytes for most drives, 4k for newer drives. But such a chunk size would be horrible for performance as it would make every single write synchronous on the bitmap update. However, the minimum size can also be limited by the available space for the bitmap when using an internal bitmap. So, you can only make the size as small as it will go and the bitmap still fit between the end of the {array,superblock} and the start of the {superblock,array}. However, in general, a bitmap that's small enough that you can sync the dirty section in a second or two should be good enough. With modern disks, they can sync 32MB or 64MB in only a second or two, hence the default size. Anything less than that is really a case of diminishing returns. You are sacrificing write speed on each and every write to the array in exchange for a *possible* speed up in the event of a crash. Not a very good trade off IMO. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: CFBFF194 http://people.redhat.com/dledford Infiniband specific RPMs available at http://people.redhat.com/dledford/Infiniband
Attachment:
signature.asc
Description: OpenPGP digital signature