J'essaie de savoir pourquoi mon application est très lente sur une certaine machine (fonctionne bien partout ailleurs). Je pense que j'ai retracé les problèmes de performances jusqu'à la lecture et l'écriture sur le disque dur et je pense que c'est simplement le disque très lent.
Quel outil puis-je utiliser pour mesurer les performances de lecture et d’écriture de disque dur sous Windows 2003 de manière non destructive (les partitions des lecteurs doivent rester intactes)?
Il existe dans Windows un vérificateur de performances de disque intégré appelé winsat
:
winsat disk -drive g
(Exécuter winsat
avec les privilèges d’administrateur)
Informations complémentaires: Informations sur le disque winsat sur technet.Microsoft.com/en-us/library/cc742157.aspx
par exemple:
C:\WINDOWS\system32>winsat disk -drive g
Windows System Assessment Tool
> Running: Feature Enumeration ''
> Run Time 00:00:00.00
> Running: Storage Assessment '-drive g -ran -read'
> Run Time 00:00:04.17
> Running: Storage Assessment '-drive g -seq -read'
> Run Time 00:00:08.64
> Running: Storage Assessment '-drive g -seq -write'
> Run Time 00:00:17.47
> Running: Storage Assessment '-drive g -flush -seq'
> Run Time 00:00:03.53
> Running: Storage Assessment '-drive g -flush -ran'
> Run Time 00:00:04.16
> Disk Random 16.0 Read 21.05 MB/s 6.0
> Disk Sequential 64.0 Read 38.29 MB/s 4.9
> Disk Sequential 64.0 Write 39.67 MB/s 4.9
> Average Read Time with Sequential Writes 1.324 ms 7.4
> Latency: 95th Percentile 2.585 ms 7.3
> Latency: Maximum 26.977 ms 7.9
> Average Read Time with Random Writes 1.299 ms 8.1
> Total Run Time 00:00:39.41
HD Tach a été fin de vie. HD Tune semble être équivalent: http://www.hdtune.com/
Vous pouvez utiliser Perfmon pour rassembler des compteurs basés sur un disque physique, tels que:
Disque physique (instance)\Compteur de transferts de disque/s pour chaque disque physique
Disque physique (instance) \% temps d'inactivité
Moy. Longueur de la file d'attente du disque
Ou téléchargez PAL (outil de surveillance très utile) et utilisez le modèle intégré ciblant le système d'exploitation.
ATTO Disk Benchmark est un logiciel gratuit qui ne nécessite pas d’installation.
IOMeter va le faire. Il peut effectuer des tests non destructifs en écrivant dans ses propres fichiers au sein des partitions.
Pour ceux qui recherchent quelque chose capable de tester des scénarios de type SQL, il y a Diskspd.exe qui a remplacé SQLIO.
Les compteurs de performance de Windows peuvent indiquer les vitesses de transfert, la file d'attente actuelle, etc. afin de tracer le goulot d'étranglement actuel sur la machine lorsque votre application est en cours d'exécution.
Examinez l'objet de performance: disque physique
Et regardez surtout les compteurs de files d'attente. Un disque peut être très rapide et ses lectures séquentielles, mais dès qu’il essaie d’y accéder simultanément, la file d’attente peut atteindre son maximum et vous donner des performances horribles.
Essayez avec les programmes de référence Harddisk: http://www.hdtune.com/http://www.PassMark.com/products/pt_advdisk.htm
Outre l'outil graphique, si vous souhaitez une sortie élaborée pour analyser les performances de votre partition ou de votre disque dur, il existe un outil Nice appelé sqlio (de Microsoft). Cet outil est basé sur CMD, mais fait un travail formidable en ce qui concerne les tests IO. Voir: Test de performance de disque Windows