Benchmark per server Linux: 5 strumenti aperti

Oggi parleremo di strumenti aperti per valutare le prestazioni di processori, memoria, file system e sistemi di storage.

L'elenco include le utilità offerte dai residenti di GitHub e dai partecipanti ai thread tematici su Reddit: Sysbench, UnixBench, Phoronix Test Suite, Vdbench e IOzone.

Benchmark per server Linux: 5 strumenti aperti
/Unsplash/ Vera Ivanova

banco di sistema

Si tratta di un'utilità per testare il carico dei server MySQL, basata sul progetto LuaJIT, all'interno del quale è in fase di sviluppo una macchina virtuale per il linguaggio Lua. L'autore dello strumento è il programmatore ed esperto di MySQL Alexey Kopytov. Il progetto è iniziato come un hobby, ma col tempo ha ottenuto il riconoscimento della comunità. Oggi, sysbench viene utilizzato nel loro lavoro da grandi università e organizzazioni IT. come l'IEEE.

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

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

Questo comando determina il tipo (cpu, memoria, fileio) e i parametri del test di carico (numero di thread, numero di richieste, velocità di elaborazione delle transazioni). Nel complesso, lo strumento è in grado di elaborare milioni di eventi al secondo. Alexey Kopytov ha parlato più in dettaglio dell'architettura e della struttura interna di sysbench in uno dei episodi del podcast sullo sviluppo software.

UnixBench

Un insieme di strumenti per valutare le prestazioni dei sistemi Unix. È stato introdotto dagli ingegneri della Monash University nel 1983. Da allora, molte persone hanno sostenuto lo strumento, ad esempio gli autori di una rivista sulle tecnologie dei microcomputer Rivista Byte e il membro della LKML David Niemi. Anthony Voelm è responsabile del rilascio della prossima versione dello strumento (Anthony Voellm) di Microsoft.

UnixBench è una suite di benchmark personalizzati. Confrontano la velocità di esecuzione del codice su una macchina Unix con le prestazioni di un sistema di riferimento Stazione SPARC 20-61. Sulla base di questo confronto, viene generato un punteggio di prestazione.

Tra i test disponibili ci sono: 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. L'elenco completo dei test è reperibile in repository su GitHub. Molti di loro utilizzano per valutare le prestazioni delle macchine virtuali nel cloud.

Suite di test Foronix

Questa serie di test è stata sviluppata dagli autori della risorsa web Phoronix, che pubblica notizie sulle distribuzioni GNU/Linux. Test Suite è stata introdotta per la prima volta nel 2008, quindi includeva 23 test diversi. Successivamente gli sviluppatori hanno lanciato un servizio cloud openbenchmarking.org, dove gli utenti potevano pubblicare i propri script di test. Oggi su di esso presentata circa 60 set di benchmark, compresi quelli relativi alla tecnologia di machine learning e ray-tracing.

Set di script specializzati consentono di testare singoli componenti del sistema. Con il loro aiuto, puoi stimare il tempo di compilazione del kernel e di codifica dei file video, la velocità di compressione degli archiviatori, ecc. Per eseguire i test, basta scrivere il comando appropriato nella console. Ad esempio, questo comando avvia una valutazione delle prestazioni della CPU:

phoronix-test-suite benchmark smallpt

Durante i test, Test Suite monitora in modo indipendente lo stato dell'apparecchiatura (temperatura della CPU e velocità di rotazione del dispositivo di raffreddamento), proteggendo il sistema dal surriscaldamento.

Benchmark per server Linux: 5 strumenti aperti
/Unsplash/ Jason Chen

Vdbench

Uno strumento per generare carico I/O sui sistemi disco, sviluppato da Oracle. Aiuta a valutare le prestazioni e l'integrità dei sistemi di archiviazione (abbiamo preparato informazioni su come calcolare le prestazioni teoriche di un sistema a disco brevi informazioni).

La soluzione funziona così: su un sistema reale viene avviato il programma SWAT (Sun StorageTek Workload Analysis Tool), che crea un dump con tutti gli accessi al disco per un certo periodo. Vengono registrati il ​​timestamp, il tipo di operazione, l'indirizzo e la dimensione del blocco dati. Successivamente, utilizzando il file dump, vdbench emula il carico su qualsiasi altro sistema.

L'elenco dei parametri per la gestione dell'utilità è ufficiale Documento Oracle. È possibile trovare il codice sorgente dell'utilità sul sito web dell'azienda.

IOzona

Utilità della console per valutare le prestazioni dei file system. Determina la velocità di lettura, scrittura e riscrittura dei file. Allo sviluppo dello strumento hanno preso parte decine di programmatori, tranne 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 thread e sincronizzarli durante i test, lo strumento utilizza lo standard Discussioni POSIX. Al termine del lavoro, IOzone produce un report con i risultati sia in formato testo che sotto forma di foglio di calcolo (Excel). Lo strumento include anche lo script gengnuplot.sh, che crea un grafico tridimensionale basato sui dati della tabella. Esempi di tali grafici possono essere trovati nella documentazione dello strumento (pagine 11-17).

IOzone è disponibile come profilo di test nella già citata Phoronix Test Suite.

Ulteriori letture dai nostri blog e social media:

Benchmark per server Linux: 5 strumenti aperti Un bug in Linux 5.1 ha portato alla perdita di dati: è già stata rilasciata una patch correttiva
Benchmark per server Linux: 5 strumenti aperti Esiste un'opinione: la tecnologia DANE per i browser ha fallito

Benchmark per server Linux: 5 strumenti aperti Perché è necessario il monitoraggio?
Benchmark per server Linux: 5 strumenti aperti Backup dei file: come assicurarsi contro la perdita di dati
Benchmark per server Linux: 5 strumenti aperti Come trasferire un disco rigido di sistema su una macchina virtuale?

Benchmark per server Linux: 5 strumenti aperti Tutti parlano di fughe di dati: come può essere d'aiuto un fornitore IaaS?
Benchmark per server Linux: 5 strumenti aperti Un breve programma didattico: come funziona la firma digitale
Benchmark per server Linux: 5 strumenti aperti Riferimento: come funziona la normativa sui dati personali

Fonte: habr.com

Aggiungi un commento