Les tests ont étés réalisés avec dd
sur RaspberryPi.
Pour l’écriture, on “lit” depuis /dev/zero
ce qui fait que la vitesse de lecture n’est pas un frein.
dd if=/dev/zero bs=xxxx count=yyyy of=file_1GB
Pour la lecture, on “écrit"vers /dev/null
ce qui fait que la vitesse d’écriture n’est pas un frein.
dd if=file_1GB of=/dev/null bs=xxxx
Les tests ont été réalisés en jouant avec un fichier d’une taille de 1 Gio mais avec différentes valeurs de bs.
La taille à priori optimale de bs est déterminée en utilisant la commande:
stat -c "%o" file_1GB
D’autres commandes peuvent être utile pour déterminer bs
fdisk -l /dev/sda1 | grep "I/O size"
dumpe2fs /dev/sda1 | grep -i "Block size"
A titre d’information, il semblerait que la commande cp
utiliserait un bs
de 4096 octets.
Les tests ont étés réalisés sans une utilisation parallèle du bus USB (pas d’autre périphérique sur les ports USB, utilisation ethernet limitée aux commandes passées en SSH )
-
Clé USB Corsair EXT4
-
bs=4096
Écriture: 29.2 MB/s
Lecture: 27.1 MB/s -
bs=1024
Écriture: 15.5 MB/s
Lecture: 21.7 MB/s
-
-
Clé USB Corsair FAT32
bs=16384
Écriture: 20.7 MB/s
Lecture: 26.0 MB/sbs=4096
Écriture: 20.1 MB/s
Lecture: 26.9 MB/s
-
Disque Dur USB FAT32
bs=4096
Écriture: 21.3 MB/s
Lecture: 25.1 MB/sbs=32768
Écriture: 21.6 MB/s
Lecture: 24.7 MB/s
-
Disque Dur USB EXT4
bs=4096
Écriture: 31.1 MB/s
Lecture: 24.0 MB/s
Ne me demandez pas pourquoi la vitesse d’écriture est parfois supérieure à la vitesse de lecture.