Ta contribution est notée négativement car il y a beaucoup de fanboys qui ne supportent pas qu'on puisse dire "du mal de Linux". Même pas capables de donner un argument. Ici c'est le consensus mou qui est important.
Avant toutes choses, il semble que la version béta actuelle de Windows soit très performante sur des machines modernes.
Comme maladroitement indiqué plus haut, tu utilises des outils différents (dd et hd tach). Je ne sais pas ce qu'est sensé faire hd tach mais il est probable que ce ne soit pas la même chose que dd. Même si cette différence est minime, cela peut créer des écarts très visibles.
Pour dd, tu devrais utiliser ce genre de chose, cela fera peut-être une différence. Ou pas: dd if=/dev/sda of=/dev/null bs=1M >dd1.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd2.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd3.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd4.log 2>&1 &
note: le signe 'plus grand que' ne passe pas en prévisualisation. Si c'est le cas en affichage normal, remplacer > par 'plus grand que'.
Pour avoir tes données: killall -USR1 dd
for f in *; do cat $f; echo; done
ou
for f in *; do tail -1 $f; done
Si tu lances dd de cette manière, tu vas profiter au maximum du cache de ton disque. Les données d'une secteur précis vont être lues une fois, les 3 lectures suivantes se feront à partir du cache.
Tu pourrais probablement lancer 10 fois dd sans changer le résultat.
Sur une machine avec un SATA2 de 160Go d'il y a 2 ans, ça me donne 4x51 Mo/s vers le milieu du disque (et 4x94 Mo/s au début). Sur une machine avec un SATA2 de 250Go d'il y a quelques mois, ça me donne 4x75 Mo/s vers le milieu du disque. Le tout avec le même noyau agé de 18 mois.
Si tu veux tester avec des lectures décalées, il te faut utiliser l'option skip de dd, avec par exemple un décalage de 10 Go: dd if=/dev/sda of=/dev/null bs=1M skip=10000>dd1.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=20000 >dd2.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=30000 >dd3.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=40000 >dd4.log 2>&1 &
Dans ce cas, le cache disque n'est plus utilisé, et les performances chutent.
Dans ce cas j'obtiens environ 50 Mo/s au lieu de 4x50 Mo/s.
Et 65 Mo/s au lieu de 4x75 Mo/s
Par contre le processeur est libre à 99% :-)
# Option de dd
Posté par Kerro . En réponse au message Bug dans les accès concurrent du disk. Évalué à 3.
Avant toutes choses, il semble que la version béta actuelle de Windows soit très performante sur des machines modernes.
Comme maladroitement indiqué plus haut, tu utilises des outils différents (dd et hd tach). Je ne sais pas ce qu'est sensé faire hd tach mais il est probable que ce ne soit pas la même chose que dd. Même si cette différence est minime, cela peut créer des écarts très visibles.
Pour dd, tu devrais utiliser ce genre de chose, cela fera peut-être une différence. Ou pas:
dd if=/dev/sda of=/dev/null bs=1M >dd1.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd2.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd3.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M >dd4.log 2>&1 &
note: le signe 'plus grand que' ne passe pas en prévisualisation. Si c'est le cas en affichage normal, remplacer > par 'plus grand que'.
Pour avoir tes données:
killall -USR1 dd
for f in *; do cat $f; echo; done
ou
for f in *; do tail -1 $f; done
Si tu lances dd de cette manière, tu vas profiter au maximum du cache de ton disque. Les données d'une secteur précis vont être lues une fois, les 3 lectures suivantes se feront à partir du cache.
Tu pourrais probablement lancer 10 fois dd sans changer le résultat.
Sur une machine avec un SATA2 de 160Go d'il y a 2 ans, ça me donne 4x51 Mo/s vers le milieu du disque (et 4x94 Mo/s au début). Sur une machine avec un SATA2 de 250Go d'il y a quelques mois, ça me donne 4x75 Mo/s vers le milieu du disque. Le tout avec le même noyau agé de 18 mois.
Si tu veux tester avec des lectures décalées, il te faut utiliser l'option skip de dd, avec par exemple un décalage de 10 Go:
dd if=/dev/sda of=/dev/null bs=1M skip=10000>dd1.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=20000 >dd2.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=30000 >dd3.log 2>&1 &
dd if=/dev/sda of=/dev/null bs=1M skip=40000 >dd4.log 2>&1 &
Dans ce cas, le cache disque n'est plus utilisé, et les performances chutent.
Dans ce cas j'obtiens environ 50 Mo/s au lieu de 4x50 Mo/s.
Et 65 Mo/s au lieu de 4x75 Mo/s
Par contre le processeur est libre à 99% :-)