Comment mesurer les performances du disque sous Windows?

116

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)?

Daniel Andersson
la source

Réponses:

186

Il existe dans Windows un vérificateur de performances de disque intégré appelé winsat:

winsat disk -drive g

(Exécuter winsatavec des privilèges d'administrateur)

Plus d'informations: 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
David d C e Freitas
la source
8
Enfin une solution qui est a) construit en b) ligne de commande - Merci beaucoup. Pour l'utiliser sur un ordinateur, 2012 Server Core OSje copiais les fichiers winsat.exe, d3d11.dll, dxgi.dll, d3d10.dll, d3d10_1.dll, d3d10_1core.dll, d3d10core.dlld'un ordinateur Windows 8.
Jürgen Steinblock
35
Vous devez exécuter l'invite de commande en tant qu'administrateur. Dans le cas contraire, une nouvelle invite apparaît et disparaît dès qu'elle est terminée, entraînant les résultats.
David Krider
1
Merci. Cela vaut peut-être la peine de modifier la réponse, car le comportement sans privilèges d’administrateur est vraiment étrange.
Dimitrios K.
2
Malheureusement, cela ne fonctionne pas sur les serveurs virtuels :(
Stalinko
1
@ mtk Cela ressemble au score WinSAT attribué au résultat. en.m.wikipedia.org/wiki/Windows_System_Assessment_Tool
David d C e Freitas
20

HD Tach a été fin de vie. HD Tune semble être équivalent: http://www.hdtune.com/

Capture d'écran HD Tune

Meilleure banane
la source
2
Jolis graphiques FTW! +1
Iain Holder
Le lien est mort et il y a maintenant une annonce de fin de vie HD Tach sur leur site Web qui indique que ce n'est plus pris en charge.
Hugo
@Hugo bonne place, ont mis à jour ma réponse en conséquence
TopBanana
1
la version gratuite de HD Tune 2.55 ne permet pas de comparer l’écriture sur disque :(
Andrej Adamenko
8

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.

Mitch Wheat
la source
8

Pour ceux qui recherchent quelque chose capable de tester des scénarios de type SQL, Diskspd.exe a remplacé SQLIO.

Mr Edmundo
la source
6

IOMeter le fera. Il peut effectuer des tests non destructifs en écrivant dans ses propres fichiers au sein des partitions.

Préoccupé parTonbridgeWells
la source
4
Iometer est nul pour l'utilisateur occasionnel. Nécessite un programme d’installation (avec for) qui essaie d’ouvrir les sockets Friggen et l’interface utilisateur est votre OSS typique - moche, bien plus complexe que nécessaire, et qui déroutera finalement toute personne qui n’a pas la technologie RTFM.
Will
1
A bien fonctionné pour moi; -}
ConcernedOfTunbridgeWells
La dernière version 1.1.0 ne fonctionne pas sous XP, contrairement à la version 2006.07.27.
ivan_pozdeev
Je dois admettre que l'interface utilisateur est loin d'être conviviale. Il fait toujours le travail et, contrairement à la plupart des autres outils d'analyse comparative, mesure la latence.
ivan_pozdeev
Il enregistre également les résultats au format CSV; si vous sélectionnez à nouveau le même fichier, il y est ajouté - très agréable pour la comparaison, les graphiques, etc.
ivan_pozdeev
4

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.

jishi
la source
0

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 bel outil appelé sqlio (de Microsoft). Cet outil est basé sur CMD, mais fait un travail remarquable en matière de test d’IO. Voir: test de performance de disque Windows

sarath
la source