Bem, já que ninguém quer responder ...:)
Pesquisando o Synaptic para "bench" encontra muitos conjuntos de benchmarking capazes de testar diferentes aspectos de uma máquina. O único sobre o qual eu ouvi falar anteriormente é phoronix-test-suite
, o que eu tenho certeza que é muito abrangente, apesar de meu curto período de atenção não me permitir descobrir como usá-lo.
Então eu encontrei UnixBench , que é descrito como
O UnixBench é o pacote de benchmark BYTE UNIX original, atualizado e revisado por muitas pessoas ao longo dos anos.
O propósito do UnixBench é fornecer um indicador básico do desempenho de um sistema semelhante ao Unix; ... Estes resultados de testes são então comparados com as pontuações de um sistema de referência para produzir um valor do índice, que geralmente é mais fácil de manipular do que as pontuações brutas.
Sistemas multi-CPU são manipulados. ... Os testes comparam sistemas Unix por comparando seus resultados a um conjunto de pontuações definidas executando o código em um sistema de referência, que é um SPARCstation 20-61 (avaliado em 10,0).
O UnixBench é mencionado pelo Linode como uma ferramenta para testes de desempenho de VMs em esta postagem do blog :
Usando hardware idêntico, os KVM Linodes são muito mais rápidos em comparação com o Xen. Por exemplo, no nosso teste UnixBench, um KVM Linode marcou 3x melhor do que um Linen Xen.
O conjunto de testes NÃO está nos repositórios do Ubuntu, mas é trivial fazer o download e compilá-lo:
wget https://github.com/kdlucas/byte-unixbench/archive/master.zip
unzip ./master.zip
cd ./byte-unixbench-master/UnixBench
./Run
Os testes demoram um pouco para terminar. A saída parece
------------------------------------------------------------------------
Benchmark Run: Mon Oct 15 2012 23:55:22 - 00:23:16
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 12015218.4 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2214.8 MWIPS (10.1 s, 7 samples)
Execl Throughput 896.9 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 58968.3 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 14578.6 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 422068.2 KBps (30.0 s, 2 samples)
Pipe Throughput 70993.3 lps (10.0 s, 7 samples)
Pipe-based Context Switching 16001.5 lps (10.0 s, 7 samples)
Process Creation 1861.8 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2525.5 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 737.8 lpm (60.1 s, 2 samples)
System Call Overhead 432496.2 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 12015218.4 1029.6
Double-Precision Whetstone 55.0 2214.8 402.7
Execl Throughput 43.0 896.9 208.6
File Copy 1024 bufsize 2000 maxblocks 3960.0 58968.3 148.9
File Copy 256 bufsize 500 maxblocks 1655.0 14578.6 88.1
File Copy 4096 bufsize 8000 maxblocks 5800.0 422068.2 727.7
Pipe Throughput 12440.0 70993.3 57.1
Pipe-based Context Switching 4000.0 16001.5 40.0
Process Creation 126.0 1861.8 147.8
Shell Scripts (1 concurrent) 42.4 2525.5 595.6
Shell Scripts (8 concurrent) 6.0 737.8 1229.7
System Call Overhead 15000.0 432496.2 288.3
========
System Benchmarks Index Score 249.7
------------------------------------------------------------------------
Benchmark Run: Tue Oct 16 2012 00:23:16 - 00:51:20
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 42619039.2 lps (10.0 s, 7 samples)
Double-Precision Whetstone 8274.0 MWIPS (10.4 s, 7 samples)
Execl Throughput 3398.5 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 68332.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 21462.9 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 718205.6 KBps (30.0 s, 2 samples)
Pipe Throughput 149713.5 lps (10.0 s, 7 samples)
Pipe-based Context Switching 61968.3 lps (10.0 s, 7 samples)
Process Creation 5321.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 5957.1 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 812.6 lpm (60.1 s, 2 samples)
System Call Overhead 1557391.5 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 42619039.2 3652.0
Double-Precision Whetstone 55.0 8274.0 1504.4
Execl Throughput 43.0 3398.5 790.4
File Copy 1024 bufsize 2000 maxblocks 3960.0 68332.4 172.6
File Copy 256 bufsize 500 maxblocks 1655.0 21462.9 129.7
File Copy 4096 bufsize 8000 maxblocks 5800.0 718205.6 1238.3
Pipe Throughput 12440.0 149713.5 120.3
Pipe-based Context Switching 4000.0 61968.3 154.9
Process Creation 126.0 5321.7 422.4
Shell Scripts (1 concurrent) 42.4 5957.1 1405.0
Shell Scripts (8 concurrent) 6.0 812.6 1354.3
System Call Overhead 15000.0 1557391.5 1038.3
========
System Benchmarks Index Score 592.5
O que significa que o VPS em questão tem uma pontuação de 249,7 para tarefa única e 592.5 para processamento paralelo.
Minha máquina desktop, apesar de ter especificações semelhantes ou inferiores à máquina física em que meu VPS está sendo executado, produziu uma pontuação 1409.7 para tarefa única e 5156.3 para processamento paralelo . Exatamente o tipo de métrica que eu estava procurando.
Outra métrica importante é a velocidade da rede. Eu encontrei um script que baixa arquivos de teste de diferentes locais e mede a velocidade de download. O script pode ser executado com
wget freevps.us/downloads/bench.sh -O - -o /dev/null|bash
(embora seja mais seguro baixar o script e inspecionar seu conteúdo antes de executá-lo)
Para monitorar a latência de I / O do disco, existe o utilitário ioping
, que pode ser instalado a partir dos repositórios do Ubuntu:
# ioping . -c 10
4096 bytes from . (ext4 /dev/disk/...): request=1 time=16.4 ms
4096 bytes from . (ext4 /dev/disk/...): request=2 time=16.1 ms
...