Comment puis-je enregistrer les performances de lecture de mon SSD au fil du temps?

10

Je voudrais garder un journal au fil du temps, peut-être chaque semaine, du taux de lecture de mon disque SSD tel que déterminé par un outil comme Système -> Administration -> Utilitaire de disque -> Benchmark:

capture d'écran

Existe-t-il un moyen d'archiver les données de test à partir de l'Utilitaire de disque, ou pouvez-vous penser à d'autres outils qui me permettraient d'accumuler ce type de données semi-automatiquement?

Je voudrais pouvoir effectuer le benchmark en utilisant des méthodes en lecture seule afin de ne pas porter inutilement le lecteur.

ændrük
la source

Réponses:

4

hdparmpeut également faire des tests. Celles-ci sont quelque peu simples par rapport à bonnie++mais elles s'exécuteront rapidement ( bonnie++peut être un porc de ressources lorsqu'il s'exécute) et n'ont pas besoin d'écrire sur le disque. Cela signifie également qu'il ne teste pas l'efficacité du système de fichiers qui s'améliorera (espérons-le) au fil du temps avec les mises à niveau du noyau.

Vous pouvez exécuter un test comme celui-ci:

sudo hdparm -t /dev/sda

Et cela répondra par quelque chose comme ceci:

/dev/sdf:
 Timing buffered disk reads:  432 MB in  3.01 seconds = 143.53 MB/sec

Maintenant, cela ne couvre pas la latence. Si cela vous dérange, il existe un script appelé seeker que vous pouvez télécharger et compiler, qui effectue certaines recherches et mesure le temps. Vous auriez besoin d'apprendre un peu de C mais vous pourriez personnaliser la sortie en quelque chose que vous pourriez vous connecter plus facilement.

Ou vous pouvez avoir confiance que le temps de réponse sur un SSD ne va tout simplement pas être pire que ~ 0,3 ms

Oli
la source
5

Jetez un oeil à bonnie++.

Vous en aurez besoin awket en grepsortir pour obtenir les chiffres que vous souhaitez enregistrer au fil du temps, mais il devrait être possible de faire écho à ce que vous voulez dans un format de valeurs séparées par des virgules sur une nouvelle ligne d'un fichier journal.

Cron cela et en six mois, importez-le dans une feuille de calcul et tracez un joli graphique. Ou utilisez R.

Edit: Bonnie ++ écrit en fait un CSV comme dernière ligne de sortie, ce qui serait un peu plus facile à extraire dans les journaux de longue date (si vous pouvez déterminer quels sont les titres des colonnes).

Mais Bonnie ++ repose sur la possibilité d'écrire un fichier (ou plusieurs) sur le système de fichiers, puis il exécute des tests de lecture sur ces fichiers. Les gens s'inquiètent beaucoup de l'usure des disques SSD, ce qui pourrait ne pas être optimal.

Oli
la source
2
Ou vous pouvez simplement enregistrer la sortie complète dans des fichiers horodatés et traiter le traitement des données jusqu'à plus tard. Cela ne facilitera pas les choses à long terme, mais vous aurez plus de données à analyser lorsque vous en aurez besoin.
Oli
C'est presque parfait, mais j'aimerais faire uniquement des benchmarks en lecture seule et je ne sais pas si c'est possible avec bonnie ++. J'ai mis à jour ma question pour clarifier cela.
ændrük
2

Si vous voulez capturer les données détaillées de l'Utilitaire de disque (alias le programme "palimpsest"), vous pouvez faire une copie des données mises en cache dans le ~/.cache/gnome-disk-utility/drive-benchmarkrépertoire. Il semble que vous y trouverez les derniers résultats pour chaque disque, dans un format étrange mais pas trop difficile à analyser (lignes de données séparées par des deux-points ...). Vous pouvez simplement copier ces fichiers dans une archive, en leur donnant à chaque fois un nom unique. Malheureusement, ils sont écrasés à chaque fois dans le cache et les données récapitulatives ne sont pas enregistrées, vous devez donc recalculer cela.

Voir 'Bogue n ° 794929 dans gnome-disk-utility (Ubuntu): "Disk Utility benchmark, x-axis undefined"' pour une demande et une réponse sur la clarté de la signification réelle des données.

nealmcb
la source