No meu novo array de 24 discos, recebo 900 MB / s de leitura ou gravação bruta usando dd
em todos os discos.
Quando eu configuro os discos como um RAID6 de 24 discos, recebo 400 MB / s de gravação e 600 MB / s de leitura. Parece ser devido a soma de verificação, como eu tenho um único processo (md0_raid6) ocupando 100% de uma CPU.
# uname -a
Linux server 3.2.0-0.bpo.1-amd64 #1 SMP Sat Feb 11 08:41:32 UTC 2012 x86_64 GNU/Linux
Eu pareço lembrar no kernel 2.6.x que o kernel imprimiu que ele poderia fazer 8000 MB / s de soma de verificação RAID6. Por isso, me surpreende que md0_raid6 esteja perto de 100%. Eu esperava que fosse em torno de 10%.
Editar:
Encontrado isso em / var / log / messages:
Mar 13 16:02:42 server kernel: [ 34.712039] raid6: int64x1 2125 MB/s
Mar 13 16:02:42 server kernel: [ 34.780043] raid6: int64x2 2149 MB/s
Mar 13 16:02:42 server kernel: [ 34.848049] raid6: int64x4 1832 MB/s
Mar 13 16:02:42 server kernel: [ 34.916047] raid6: int64x8 1569 MB/s
Mar 13 16:02:42 server kernel: [ 34.984041] raid6: sse2x1 3186 MB/s
Mar 13 16:02:42 server kernel: [ 35.052031] raid6: sse2x2 5272 MB/s
Mar 13 16:02:42 server kernel: [ 35.120032] raid6: sse2x4 6196 MB/s
Mar 13 16:02:42 server kernel: [ 35.120035] raid6: using algorithm sse2x4 (6196 MB/s)
Mar 13 16:02:42 server kernel: [ 35.144209] md: raid6 personality registered for level 6
Mar 13 16:02:42 server kernel: [ 35.144212] md: raid5 personality registered for level 5
Mar 13 16:02:42 server kernel: [ 35.144214] md: raid4 personality registered for level 4
Eu ingenuamente acreditei que isso significava que eu poderia fazer checksum 6196 MBytes / s.
Por que são necessários 100% e não cerca de 10%?
Tags performance raid mdadm linux checksum