Benchmark per server Linux: 5 strumenti open source

Oggi parleremo di strumenti open source per valutare le prestazioni dei processori, della memoria, dei file system e dei sistemi di archiviazione.

Nella lista sono incluse utility fornite dai membri di GitHub e dai partecipanti ai thread tematici su Reddit: Sysbench, UnixBench, Phoronix Test Suite, Vdbench e IOzone.

Benchmark per server Linux: 5 strumenti open source
/ Unsplash / Veri Ivanova

Sysbench

Questa è un'utility per il testing delle prestazioni dei server MySQL, basata sul progetto LuaJIT, che sviluppa una macchina virtuale per il linguaggio Lua. L'autore dello strumento è Alexey Kopytov, programmatore ed esperto di MySQL. Il progetto è iniziato come un hobby ma nel tempo ha ottenuto riconoscimento dalla comunità. Oggi sysbench è utilizzato da grandi università e organizzazioni IT come l'IEEE..

Durante la conferenza SECR-2017 (video della presentazione disponibile su YouTube) Alexey ha spiegato che sysbench consente di valutare le prestazioni del database durante il trasferimento su nuovo hardware, l'aggiornamento della versione del DBMS o un cambiamento improvviso nel numero di richieste. In generale, la sintassi del comando per eseguire un test è la seguente:

sysbench [options]... [testname] [command]

Questo comando definisce il tipo (cpu, memoria, fileio) e i parametri del test di carico (numero di thread, numero di richieste, velocità di elaborazione delle transazioni). In generale, lo strumento è in grado di elaborare milioni di eventi al secondo. Maggiori dettagli sull'architettura e il funzionamento interno di sysbench sono stati forniti da Alexey Kopytov in uno dei episodi del Software Development Podcast.

UnixBench

Un insieme di strumenti per la valutazione delle prestazioni dei sistemi Unix. È stato presentato dagli ingegneri dell'Università di Monash nel 1983. Da allora, lo sviluppo dello strumento è stato curato da molte persone, tra cui gli autori della rivista sulle microcomputer Byte Magazine e il partecipante a LKML David Niemi. La prossima versione dello strumento è sotto la responsabilità di Anthony Voellm (Anthony Voellm) di Microsoft.

UnixBench consiste in un insieme di test individuali. Questi confrontano la velocità di esecuzione del codice su una macchina Unix con le prestazioni di un sistema di riferimento, rappresentato da SPARCstation 20-61. Sulla base di questo confronto, viene generato un punteggio che determina le prestazioni.

I test disponibili includono: Whetstone, che descrive l'efficienza delle operazioni in virgola mobile, File Copy, che valuta la velocità di copia dei dati, e diversi benchmark 2D e 3D. Puoi trovare l'elenco completo dei test in repository su GitHub. Molti di essi sono utilizzati per valutare le prestazioni delle macchine virtuali nel cloud.

Phoronix Test Suite

Questo complesso di test è stato sviluppato dagli autori del sito web Phoronix, che pubblica notizie sui distribuzioni GNU/Linux. Il Test Suite è stato presentato per la prima volta nel 2008, quando includeva 23 test diversi. In seguito, gli sviluppatori hanno lanciato il servizio cloud OpenBenchmarking.org, dove gli utenti possono pubblicare i propri script di test. Oggi sono disponibili circa 60 set di benchmark, inclusi quelli relativi all'apprendimento automatico e alla tecnologia ray-tracing.

I set di script specializzati consentono di testare singoli componenti del sistema. Con essi è possibile valutare il tempo di compilazione del kernel e la codifica di file video, la velocità di compressione dei file zip e altro ancora. Per avviare i test è sufficiente scrivere il comando corrispondente nella console. Ad esempio, questo comando avvia la valutazione delle prestazioni della CPU:

phoronix-test-suite benchmark smallpt

Durante i test, il Test Suite monitora autonomamente le condizioni del sistema (temperatura della CPU e velocità delle ventole), proteggendo il sistema dal surriscaldamento.

Benchmark per server Linux: 5 strumenti open source
/ Unsplash / Jason Chen

Vdbench

Uno strumento per generare carichi di I/O sui sistemi di archiviazione, sviluppato da Oracle. Aiuta a valutare le prestazioni e l'integrità delle SAN (per capire come calcolare la prestazione teorica del sistema di archiviazione, abbiamo preparato una breve guida).

Il funzionamento della soluzione è il seguente: su un sistema reale viene eseguito il programma SWAT (Sun StorageTek Workload Analysis Tool), che crea un dump di tutte le operazioni sul disco in un certo periodo. Vengono registrati timestamp, tipo di operazione, indirizzo e dimensione del blocco dati. Successivamente, utilizzando il file di dump, Vdbench emula il carico su qualsiasi altro sistema.

L'elenco dei parametri per gestire l'utility è disponibile nel documento ufficiale di Oracle. Il codice sorgente dell'utilità può essere trovato sul sito della compagnia.

IOzone

Strumento da riga di comando per valutare le performance dei file system. Determina la velocità di lettura, scrittura e riscrittura dei file. Decine di programmatori hanno contribuito allo sviluppo dello strumento, ma l'autore della sua prima versione è è considerato l'ingegnere William Norcott. Lo sviluppo è stato supportato da aziende come Apple, NetApp e iXsystems.

Per gestire i flussi e la loro sincronizzazione durante i test, lo strumento utilizza lo standard POSIX Threads. Al termine dell'esecuzione, IOzone fornisce un rapporto con i risultati, sia in formato testo che come foglio elettronico (Excel). Inoltre, lo strumento include uno script gengnuplot.sh, che costruisce un grafico tridimensionale basato sui dati delle tabelle. Esempi di tali grafici possono essere trovati nella documentazione dello strumento (p. 11–17).

IOzone è disponibile come profilo di test nel già citato Phoronix Test Suite.

Ulteriori letture dai nostri blog e social media:

Benchmark per server Linux: 5 strumenti open source Un bug in Linux 5.1 ha causato la perdita di dati — è già stato rilasciato un patch correttivo
Benchmark per server Linux: 5 strumenti open source Si dice che la tecnologia DANE per i browser abbia fallito

Benchmark per server Linux: 5 strumenti open source Perché è necessario il monitoraggio?
Benchmark per server Linux: 5 strumenti open source Backup dei file: come proteggersi dalla perdita di dati
Benchmark per server Linux: 5 strumenti open source Come trasferire un disco rigido di sistema in una macchina virtuale?

Benchmark per server Linux: 5 strumenti open source Tutti parlano delle fughe di dati personali — come può aiutare un provider IaaS
Benchmark per server Linux: 5 strumenti open source Breve lezione introduttiva: come funziona la firma elettronica
Benchmark per server Linux: 5 strumenti open source Riferimento: come funziona la legge sulla protezione dei dati personali

Fonte: habr.com

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster