Comment vérifier les performances ?
Sommaire
Introduction
benchmark = analyse les performances de votre serveur pour résumer. UnixBench n'est pas le seul logiciel qui vous permet de tester les différents composants de votre serveur, il existe (liste non exhaustive) :
- iostats (pour les disques durs, charge moyenne cpu (load avg) et le trafic internet),
- vmstat (pour la mémoire),
- mpstat (pour le cpu de façon détaillé),
- top (ou htop),
- netstat (ou tcpdump),
- iftop (pour vérifier la bande passante)
- systat (regroupe plusieurs logiciels)
Il en existe d'autres, vous vous en douterez bien donc difficile de tous les lister. Vous avez déjà l'essentiel pour vérifier votre serveur.
Tester les performances Hardwares
Requis
- aptitude install build-essential libx11-dev libgl1-mesa-dev libxext-dev perl perl-modules
Installation UnixBench
On télécharge l'archive :
wget https://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz
On décompresse et on se place dans son répertoire :
tar -zxvf UnixBench5.1.3.tgz && cd UnixBench
Si votre machine est configuré en Français, vous devrez modifier le fichier Run : (Ligne 75) Chercher my $language = "en_EN.utf8";' puis remplacer par my $language = "fr_FR.utf8";.
Utilisation UnixBench
Exécuter la commande ./Run et patientez le temps que les tests se terminent....
Les informations du VPS :
- Processeur :
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 42 model name : Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz stepping : 7 cpu MHz : 848.062 cache size : 8192 KB physical id : 0 siblings : 8 core id : 0 cpu cores : 4 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid bogomips : 6784.50 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management:
- Disque dur :
Sys. fich. Taille Util. Dispo Uti% Monté sur /dev/ploop26338p1 9,9G 2,7G 6,8G 28% /
- Mémoire :
total used free shared buffers cached Mem: 128 86 41 0 0 55 -/+ buffers/cache: 31 96 Swap: 128 127 0 Total: 256 214 41
Résultat UnixBench du VPS :
========================================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: free4funs.proxydns.com: GNU/Linux
OS: GNU/Linux -- 2.6.32-042stab094.7 -- #1 SMP Wed Oct 22 12:43:21 MSK 2014
Machine: x86_64 (unknown)
Language: fr_FR.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz (6784.5 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
01:14:30 up 3 days, 14:12, 1 user, load average: 0,23, 0,19, 0,10; runlevel
Benchmark Run: dim. févr. 01 2015 01:14:30 - 01:52:12
1 CPU in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 3058747.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1833.7 MWIPS (9.9 s, 7 samples)
Execl Throughput 441.3 lps (29.2 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 62140.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 17759.5 KBps (30.1 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 186505.2 KBps (30.0 s, 2 samples)
Pipe Throughput 146187.6 lps (10.0 s, 7 samples)
Pipe-based Context Switching 23257.1 lps (10.0 s, 7 samples)
Process Creation 1322.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 577.5 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 76.6 lpm (60.3 s, 2 samples)
System Call Overhead 220675.4 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 3058747.6 262.1
Double-Precision Whetstone 55.0 1833.7 333.4
Execl Throughput 43.0 441.3 102.6
File Copy 1024 bufsize 2000 maxblocks 3960.0 62140.2 156.9
File Copy 256 bufsize 500 maxblocks 1655.0 17759.5 107.3
File Copy 4096 bufsize 8000 maxblocks 5800.0 186505.2 321.6
Pipe Throughput 12440.0 146187.6 117.5
Pipe-based Context Switching 4000.0 23257.1 58.1
Process Creation 126.0 1322.7 105.0
Shell Scripts (1 concurrent) 42.4 577.5 136.2
Shell Scripts (8 concurrent) 6.0 76.6 127.7
System Call Overhead 15000.0 220675.4 147.1
========
System Benchmarks Index Score 145.4
Tester les performances réseaux
Requis
- Python 2.4 jusqu'à la version 3.4
Installation SpeedTest
Concernant l'installation, nous allons faire simple et surtout éviter d'installer des paquets inutiles. Sachez que vous pouvez toutefois utiliser Github pour avoir en permanence la dernière version ou installer avec pip_install ou easy_install.
- Pour GitHub, il vous faudra installer le paquet git.
- Pour pip_install, il vous faudra installer les paquets python-dev python-pip.
Connectez-vous avec votre utilisateur, ROOT n'est pas obligatoire !
On télécharge l'archive :
wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
On applique un chmod 755:
chmod +x speedtest-cli python speedtest_cli.py
Utilisation SpeedTest
Exécuter la commande python speedtest.py ou ./speedtest.py puis patientez pendant que le test soit terminé :
Testing from GHOSTnet GmbH (IP_DU_DEDIE_OU_VPS)... Selecting best server based on ping... Hosted by SinaroHost LTD (Frankfurt) [100.73 km]: 24.637 ms Testing download speed........................................ Download: 9.77 Mbit/s Testing upload speed.................................................. Upload: 9.58 Mbit/s
Les commandes SpeedTest
Pour afficher les différentes commandes de SpeedTest (ou de n'importe quel autre logiciel), le plus souvent, il faut ajouter le paramètre --help ou son raccourci -h en y incluant un espace entre.
python speedtest.py --help
usage: speedtest.py [-h] [--share] [--simple] [--list] [--server SERVER] [--mini MINI] [--source SOURCE] [--version] Command line interface for testing internet bandwidth using speedtest.net. -------------------------------------------------------------------------- https://github.com/sivel/speedtest-cli
optional arguments:
-h, --help show this help message and exit
--share Generate and provide a URL to the speedtest.net share
results image
--simple Suppress verbose output, only show basic information
--list Display a list of speedtest.net servers sorted by distance
--server SERVER Specify a server ID to test against
--mini MINI URL of the Speedtest Mini server
--source SOURCE Source IP address to bind to
--version Show the version number and exit
Veuillez m'excusez si la traduction n'est pas correct mais utilisant google pour traduire et n'ayant pas fait d'anglais...
- -h, --help
Affiche ce message d'aide - --share
Permet de générer un lien de partage du test réalisé. - --simple
Affiche de façon simple les résultats (aucun détails ne sera présent, il retournera uniquement les résultats) - --list
Affiche la liste des serveurs de speedtest.net en y incluant la distance. - --server
Permet de tester un autre serveur en précisant son ID (L'ID sera donné en exécutant l'option -list. Pour obtenir la liste des serveurs Français, ajouter ceci à la fin | grep -i france'. - --mini
Permet de définir un lien d'un petit serveur de speedtest. - --source
Source IP address to bind to - --version Affiche la version de SpeedTest-cli
--Let's Go (discussion) 1 février 2015 à 16:01 (CET)