Aujourd'hui, nous parlerons d'outils ouverts pour évaluer les performances des processeurs, de la mémoire, des systèmes de fichiers et des systèmes de stockage.
La liste comprend les utilitaires offerts par les résidents de GitHub et les membres des threads thématiques sur Reddit - Sysbench, UnixBench, Phoronix Test Suite, Vdbench et IOzone.
/ Unsplash / Veri IvanovaIl s'agit d'un utilitaire de test de charge des serveurs MySQL, basé sur le projet LuaJIT, qui développe une machine virtuelle pour le langage Lua. L'auteur de l'outil est programmeur et expert sur MySQL Alexey Kopytov. Le projet a commencé comme un passe-temps, mais avec le temps, il a gagné la reconnaissance de la communauté. Aujourd'hui, sysbench utilise de grandes universités et des organisations informatiques
comme IEEE dans leur travail.
Lors de la conférence SECR-2017 (il y a un enregistrement du discours
sur YouTube ), Alexey a déclaré que sysbench vous permet d'évaluer les performances de la base de données lors du passage à un nouvel équipement, de la mise à jour de la version du SGBD ou de la modification drastique du nombre de requêtes. En général, la syntaxe de commande pour le test est la suivante:
sysbench [options]... [testname] [command]
Cette commande détermine le type (cpu, mémoire, fileio) et les paramètres de test de charge (nombre de threads, nombre de requêtes, vitesse de traitement des transactions). En général, l'outil est capable de traiter des millions d'événements par seconde. Alexey Kopytov a parlé plus en détail de l'architecture et de la structure interne de sysbench dans l'un des
numéros du podcast Software Development Podcast .
Un ensemble d'outils pour évaluer les performances des systèmes Unix. Il a été présenté par des ingénieurs de l'Université Monash en 1983. Depuis lors, de nombreuses personnes soutiennent cet outil, par exemple,
Byte Magazine , l'auteur du
magazine sur la technologie des micro-ordinateurs
, et David Niemi, membre de LKML.
Anthony Voellm de Microsoft est responsable de la sortie de la prochaine version de l'outil.
UnixBench est une collection de tests individuels. Ils comparent la vitesse d'exécution du code sur une machine exécutant Unix avec les performances du système de référence, qui est
SPARCstation 20-61. Sur la base de cette comparaison, un score de performance est généré.
Parmi les tests disponibles, il y a: Whetstone, qui décrit l'efficacité des opérations en virgule flottante, File Copy, qui estime la vitesse de copie des données, et plusieurs benchmarks 2D et 3D. Une liste complète des tests peut être trouvée dans le référentiel sur GitHub . Beaucoup d'entre eux utilisent des machines virtuelles dans le cloud pour évaluer les performances des machines virtuelles.
Cette suite de tests a été développée par les auteurs de la ressource Web Phoronix, qui publie des nouvelles sur les distributions GNU / Linux. La première suite de tests a été introduite en 2008, puis elle comprenait 23 tests différents. Plus tard, les développeurs ont lancé le service cloud
OpenBenchmarking.org , où les utilisateurs pouvaient publier leurs propres scripts de test. Aujourd'hui, il
présente environ 60 kits de référence, y compris ceux liés à l'apprentissage automatique et à la technologie de lancer de rayons.
Des ensembles de scripts spécialisés permettent de tester des composants système individuels. Avec leur aide, vous pouvez évaluer le temps de compilation du noyau et l'encodage des fichiers vidéo, la vitesse de compression des archiveurs, etc. Pour exécuter les tests, il suffit d'écrire la commande appropriée dans la console. Par exemple, cette commande lance une évaluation des performances du processeur:
phoronix-test-suite benchmark smallpt
Pendant les tests, Test Suite surveille indépendamment l'état de l'équipement (température du processeur et vitesse du refroidisseur), protégeant le système contre la surchauffe.
/ Unsplash / Jason Chen
Un outil pour générer une charge d'E / S sur des systèmes de disques développé par Oracle. Il permet d'évaluer les performances et l'intégrité des systèmes de stockage (nous avons préparé une
brève aide sur la façon de calculer les performances théoriques d'un système de disque).
La solution fonctionne comme suit: sur un système réel, le programme SWAT (Sun StorageTek Workload Analysis Tool) est lancé, ce qui crée un vidage avec tous les accès au disque pendant une certaine période. L'horodatage, le type d'opération, l'adresse et la taille du bloc de données sont enregistrés. Ensuite, à l'aide du fichier de vidage, vdbench émule la charge sur tout autre système.
La liste des paramètres de gestion de l'utilitaire se trouve dans le
document officiel d'
Oracle . Le code source de l'utilitaire se trouve
sur le site Web de l'entreprise .
Utilitaire de console pour évaluer les performances du système de fichiers. Il détermine la vitesse de lecture, d'écriture et d'écrasement des fichiers. Des dizaines de programmeurs ont participé au développement de l'outil, mais l'ingénieur de sa première version
est considéré comme l' ingénieur William Norcott. Le développement a été soutenu par des sociétés comme Apple, NetApp et iXsystems.
Pour contrôler les threads et les synchroniser lors des tests, l'outil utilise la norme
POSIX Threads . À la fin des travaux, IOzone publie un rapport avec les résultats sous forme de texte ou sous forme de feuille de calcul (Excel). L'outil comprend également le script gengnuplot.sh, qui crée un graphique en trois dimensions à partir des données des tableaux. Des exemples de tels graphiques peuvent être trouvés dans la documentation de l'instrument (
p. 11-17 ).
IOzone est disponible en tant que profil de test dans la suite de tests Phoronix déjà mentionnée.
Lecture supplémentaire de nos blogs et réseaux sociaux:
Un bogue dans Linux 5.1 a entraîné une perte de données - un correctif de correction a déjà été publié
Certains disent que la technologie DANE pour les navigateurs a échoué
Pourquoi la surveillance est-elle nécessaire?
Sauvegarde de fichiers: comment être à l'abri de la perte de données
Comment transférer un disque dur système vers une machine virtuelle?
Tout le monde parle de fuites de PD - comment le fournisseur IaaS aidera
Programme éducatif court: comment la signature électronique est organisée
Contexte: fonctionnement de la loi sur les données personnelles