[linux-neuchatel] 4k sectors

Marc SCHAEFER schaefer at alphanet.ch
Wed Mar 10 17:09:31 CET 2010


Bonjour,

depuis que les disques-durs existent, la taille de secteur de 512 octets
a été très populaire (souvent en interne c'est un peu plus pour la
correction d'erreur ECC, jusqu'à 24 octets de plus -- c'est transparent).

Dans les années 90, pour un produit que j'avais co-développé offrant du
RAID5 sans pénalité "read-modify-write" même en mode dégradé, nous
offrions 1024 bytes/secteur.  Seul Linux supportait parfaitement ce
mode; d'autres OS avaient un support varié (SGI et Mac OS X: crash; NT
4.0: largement OK).  Nous avions songé à l'émulation 512, mais cela
n'aurait été performant que si le filesystem était bien "aligné".
Pour cette raison, ce produit n'est jamais devenu très populaire
en dehors des applications vidéos haute performance.

Aujourd'hui, il semble [1] que certains fabricants envisagent ou ont
déjà vendu des disques dont le secteur natif est de 4096 octets (+
redondance).  Ces disques exportent apparemment toujours une interface à
512 octets par secteur.  Une écriture "mal alignée" et incomplète (p.ex.
4096 bytes écrits sur les secteurs 1, 2, 3, 4) peut provoquer des cycles
read-modify-write (ici dans cet exemple: lecture 0, écriture [0, 1, 2,
3], lecture 5, 6, 7, écriture [4, 5, 6, 7]).

Idéalement en 2011 ces disques pourront (jumpers?) être configurés en
mode natif 4096 -- ce qui devrait augmenter les performances Linux 32 et
64 bits (4096 étant la taille de page i386 32 bits et la taille standard
de buffer du filesystem ext3 aujourd'hui).

En attendant, Linux pourrait potentiellement être "ralenti en écriture"
avec de tels disques si votre partition n'est pas alignée sur les blocs
réels de 4K.  Le ralentissement devrait être faible, vu que le cache
Linux écrit rarement quelques blocs parsemés, mais on ne sait jamais!

Quand j'aurai un moment, j'essaierai de mesurer ce phénomène.  Sauf si
quelqu'un a envie de chercher un peu sur Internet et de résumer ici.

[1] http://news.bbc.co.uk/2/hi/technology/8557144.stm





More information about the linux-neuchatel mailing list