Outils pour utilisateurs

Outils du site


hardwarebenchmarking

Statut

Brouillon

Introduction

Connaître son système, permettre d'appuyer une impression concernant une différence de performance (“ça marche moins bien aujourd'hui”) par des chiffres.

Connaître l'impact d'une modification de configuration, d'un changement de version, etc.

2 principaux éléments à mesurer:

  • le débit (quantité de données par unité de temps)
  • la latence (combien de temps on attend les données)

Principes :

  • isoler les variables
  • faire tourner le benchmark plusieurs fois et faire une moyenne des résultats obtenus.

Différences entre bm synthétiques et applicatifs. LEs premiers testent des composants du système, les seconds vont tester l'application en elle-même.

Les bm bas-niveau vont tester les éléments de base du système. Permet de comparer avec la datasheet du matériel et de s'assurer que le matériel est correctement configuré et pris en charge par le système.

Il est important d'automatiser au maximum les différents bm afin de garantir la continuité des résultats d'un test à l'autre.

Références

BDD Postgresql - Gestion des performances

Remarques

À ne pas réaliser sur un serveur en production !

Pour les tests de disque dur, et éviter de travailler avec le cache, utiliser une taille de fichier == 2xRAM.

Disque durs

dd

time sh -c "dd if=/dev/zero of=bigfile bs=BLOCKSIZE count=250000xRAM en go && sync"

time dd if=bigdile of=/dev/null bs=BLOCKSIZE

Faire un vmstat en parallèle

Taille de bloc: 8ko pourpostgresql

bonnie ++

Informations intéressantes:

  • lecture séquentielles en mode bloc
  • lecture aléatoire en mode bloc
  • accès.
mkdir /foo
chown user /foo
bonnie++ -u useruid -r 1024 -n 256  -b -d /foo -s 20000
  • -u 0 uid utilisé pour le test
  • -r RAM systme
  • -n nb de fichiers à créer
  • -b fsync à chaque écriture
  • -s au moins 2xRAM

remarque: le test tel que défini ci-dessus est extrémement long , donc inutilisable

sysbench

  • test=fileio
  • num-threads
  • file-num=RAM GB
  • file-test-mode=rndwr ou rndrd
  • file-fsync-freq=0

prepare, run –max-time=XXsec, cleanup

sysbench fileio --file-total-size=3G  prepare
sysbench fileio --file-total-size=3G  --file-test-mode=rndrw --time=300 --events=50000 run
sysbench fileio cleanup

CPU

hardinfo

Compilation du noyau. Ne permet pas de comparer des systèmes entre eux.

RAM

Réseau

  • copie d'un gros fichier via nc
  • copie du même fichier en utilisant le protocole à tester
  • comparaison

Suite complète

Phoronix test suite

# vim: set filetype=dokuwiki:

hardwarebenchmarking.txt · Dernière modification: 2017/07/21 09:44 (modification externe)