Vitesse du disque
DiskSpd est un outil de performances de stockage développé par les équipes d'ingénierie Windows, Windows Server et Cloud Server Infrastructure de Microsoft. Veuillez visiter https://github.com/Microsoft/diskspd/wiki pour une documentation mise à jour.
En plus de l'outil lui-même, ce référentiel héberge des cadres de mesure qui utilisent DiskSpd. Le premier exemple est VM Fleet, utilisé pour les environnements hyper-convergés Windows Server avec Storage Spaces Direct.
Ce projet a adopté le code de conduite Microsoft Open Source. Pour plus d’informations, consultez la FAQ sur le code de conduite ou contactez [email protected] pour toute question ou commentaire supplémentaire.
Sorties
La page Versions comprend des binaires précompilés (ZIP) et le code source des versions les plus récentes de l'outil DiskSpd. La dernière mise à jour de DiskSpd peut toujours être téléchargée depuis https://github.com/Microsoft/diskspd/releases/latest/download/DiskSpd.zip (alias https://aka.ms/getdiskspd).
Quoi de neuf?
DISQUESPD
DISKSPD 2.2 3/06/2024
REMARQUE : les modifications apportées à la boucle d'E/S asynchrone nécessiteront une redéfinition des résultats avec des profondeurs de file d'attente supérieures à 1. La nouvelle conception draine la file d'attente d'achèvement de manière plus agressive, réduisant ainsi les délais qui ont eu un impact sur la mesure de la latence, en particulier sur un stockage plus rapide ciblant des profondeurs de file d'attente plus élevées. La mesure de la latence est améliorée à un très faible coût en termes de débits, ainsi que lorsque la mesure de la latence n'est pas utilisée ( -D
ou -L
) en raison de la suppression des lots.
Les tailles d'E/S plus petites verront le plus de changements.
- Nouveau : ajout des classes Socket, NUMA, Core et Power Efficiency (gros/petits cœurs) aux rapports sur la topologie du processeur (sortie XML et texte)
- éléments de topologie affichés uniquement dans les résultats texte lorsque > 1 sont présents (par exemple, systèmes multi-sockets)
- La numérotation du processeur reste relative au groupe, tout comme la nouvelle numérotation des cœurs.
- La classe d'efficacité énergétique la plus élevée est marquée d'un suffixe
P
(ce sera généralement 1P
v. 0
) - REMARQUE : les classes d'efficacité peuvent avoir un impact majeur ; le travail sur des systèmes hétérogènes doit être conscient des propriétés de base en combinaison avec les règles d'affinité des threads (voir
-a
et -n
)
- Nouveau : rapports sur les schémas d'alimentation actifs
- Nouveau : le commutateur de décalage de cible de base permet désormais la spécification de plage :
-Bbase[:length]
; remplace -B
et -f
- Le traitement de l'histogramme de latence post-exécution est désormais beaucoup plus rapide.
- la sortie détaillée est plus cohérente ; comprend les intervalles d'échauffement réels, mesurés et de refroidissement par rapport aux intervalles attendus
La version binaire est prise en charge jusqu'à Windows 8 et Windows Server 2012 ; utilise désormais le CRT universel.
DISKSPD 2.1 1/7/2021
- Nouveau formulaire
-gi
permettant la spécification de la limite de débit en unités d'IOPS (par taille de bloc spécifiée) - Nouveau
-rs
pour spécifier une opération mixte aléatoire/séquentielle (pct random) ; répartition géométrique des longueurs de course - Nouveau
-rd
pour spécifier des distributions d'E/S non uniformes sur la cible-
pct
par pourcentage cible -
abs
par décalage absolu
- Nouveau
-Rp
pour afficher l'ensemble de paramètres spécifié dans le formulaire de sortie de profil indiqué ; fonctionne avec les profils XML -X et la ligne de commande conventionnelle - Les résultats/profils XML sont désormais en retrait pour faciliter la révision
- Mises à jour de la sortie des résultats de texte
- affiche désormais les valeurs en unités de taille (K/M/G, et maintenant TiB) avec deux décimales
- le pas de fil n'est plus affiché sauf indication contraire
- Paramètres du pool de threads -F/-O affichés
- Les profils XML peuvent désormais être créés de manière plus générique
- Les profils XML peuvent être énoncés en termes de noms de cibles modélisés (*1, *2), remplacés dans l'ordre à partir de l'invocation de la ligne de commande.
- la ligne de commande autorise désormais les options à côté de -X : -v, -z, -R et -W/-d/-C ainsi que les spécifications cibles du modèle
DISKSPD 2.0.21a 21/09/2018
- Ajout de la prise en charge des E/S mappées en mémoire :
- Nouvelle option
-Sm
pour activer les E/S mappées en mémoire - Nouvelle option
-N
pour spécifier les options de vidage pour les E/S mappées en mémoire
- Ajout de la prise en charge de la fourniture d'événements Event Tracing for Windows (ETW)
- Inclus un profil Windows Performance Recorder (WPR) pour activer le traçage ETW
- Ajout d'informations système à la sortie ResultParser
DISKSPD 2.0.20a 28/02/2018
- Modifications pouvant nécessiter une redéfinition des résultats :
- Nouveau générateur de nombres aléatoires pouvant montrer une diminution des coûts observable
- Passage à des tampons alignés de 512 octets avec l'option
-Z
pour augmenter les performances
- Nouvelle option
-O
pour spécifier le nombre de requêtes IO en attente par thread - Nouvelle option
-Zr
pour la randomisation par IO du contenu du tampon d'écriture - XML : ajoute un nouvel élément
pour prendre en charge les schémas de pondération cible - Statistiques améliorées capturées à partir des données IOPS
- Ajout de la prise en charge de la validation des profils XML à l'aide d'un XSD intégré
- Ajout de la prise en charge de la gestion des volumes RAW
- Statistiques CPU mises à jour pour fonctionner sur des systèmes > 64 cœurs
- Calcul mis à jour et précision des statistiques du processeur
- Réactiver la prise en charge des statistiques ETW
DISKSPD 2.0.18a 31/05/2016
- mise à jour
/?
exemple pour utiliser -Sh
v. obsolète -h
- correction du fonctionnement sur les volumes sur des supports partitionnés GPT (:)
- correction de l'indice de priorité IO pour un alignement correct de la pile (sinon 8 octets, échouera)
- utilisez la notation iB pour clarifier que la sortie du résultat du texte est en unités 2^n (KiB/MiB/GiB)
DISKSPD 2.0.17a 01/05/2016
-
-S
est étendu pour contrôler l'écriture indépendante du cache du système d'exploitation/logiciel. Entre autres choses, cela permet de spécifier l'écriture tamponnée ( -Sbw
). - XML : ajoute un nouvel élément
pour spécifier l'écriture directe - XML :
n'est plus émis (toujours analysé cependant), en faveur de
et
- Sortie texte : le cache du système d'exploitation/logiciel et l'état d'écriture sont désormais documentés séparément (lignes adjacentes)
- L'histogramme de latence rapporte désormais à 9-9 (une partie sur un milliard) dans la sortie texte et XML.
- Message d'erreur ajouté en cas d'échec de l'ouverture du fichier source de contenu en écriture (
-Z,
)
Flotte de machines virtuelles
VM Fleet est un framework de caractérisation et d'analyse des performances permettant d'explorer les capacités de stockage des environnements hyper-convergés Windows Server avec Storage Spaces Direct.
Flotte de machines virtuelles 2.1.0.0 03/04/2024
- Prise en charge de la gestion des machines virtuelles Arc (applicable uniquement aux clusters gérés par Arc)
-
Set-FleetRunProfileScript
- produit un script à exécution libre basé sur l'un des profils de charge de travail définis -
Watch-FleetCPU
- nouvelle prise en charge de la surveillance de l'utilisation du VCPU invité (-Guest) ; peut gérer les pannes de données - Correctif : la gestion des compteurs de performances gère désormais les pertes de données intermittentes (selon relog.exe conventionnel)
- Correctif : le contrôle de santé de la machine virtuelle à mi-exécution gère désormais la possibilité que la validation de nombreuses machines virtuelles prenne plus de temps que prévu ; sortie anticipée pour éviter les faux échecs
- Correction : ignorer l'indication de redémarrage requis de la couche de cache lors de la modification du comportement du cache ; éviter les faux échecs
Flotte de machines virtuelles 2.0.2.2 12/1/2021
- Correction d'un problème d'accès à distance du cluster pendant New-Fleet causé par le travail 2.0.2.1
- Utilisez la journalisation horodatée dans New-Fleet, simplifiez et décolorez la sortie par défaut
Flotte de machines virtuelles 2.0.2.1 9/11/2021
- Résoudre les problèmes d'accès à distance du cluster dans Move-Fleet et Get-FleetDataDiskEstimate
- Correction d'un problème de timing avec Start-FleetSweep ; toujours partir de la pause de la flotte pour éviter de déclencher un free run
- Utiliser l'unicité pour garantir le profil d'exécution de Start-FleetSweep en cas de répétition
Flotte de machines virtuelles 2.0.2 02/11/2021
- Le fonctionnement de l'hôte Windows Server 2019/RS5 est désormais confirmé et pris en charge
- Le préchauffage du cache de lecture pour les systèmes de capacité HDD devrait désormais être plus rapide
Set-FleetPause
attendra les réponses de la VM avant la fin par défaut (voir -Timeout)
Plusieurs correctifs mineurs, notamment :
- Désactiver la console de récupération Windows dans les VM du parc
- Correctif : la vue
Show-Fleet
IOPS regroupe désormais tous les périphériques de disque de VM - Correctif : nettoyez automatiquement les collecteurs de données divulgués/conflits et blg
Flotte de machines virtuelles 2.0 22/09/2021
- version majeure et réécriture en tant que module Powershell de première classe
- La flotte de machines virtuelles originale basée sur des scripts reste disponible sur Frameworks/VMFleet1.0
- voir la documentation dans le Wiki
Code source
Le code source de DiskSpd est hébergé sur GitHub à l'adresse :
https://github.com/Microsoft/diskspd
Tout problème avec DiskSpd peut être signalé en utilisant le lien suivant :
https://github.com/Microsoft/diskspd/issues