Database
 sql >> Database >  >> RDS >> Database

Utilizzo di Geekbench 3.2 per testare server di database di grandi dimensioni

Uno dei miei strumenti preferiti per valutare e confrontare rapidamente le prestazioni del processore e della memoria su un server di database è Geekbench 3.2 di Primate Labs. Mi piace usare Geekbench per caricare un carico di lavoro significativo su un nuovo server per alcuni minuti durante il processo di provisioning e configurazione, sia per misurare le prestazioni del processore e della memoria sia per confermare che la gestione dell'alimentazione sia impostata correttamente e che Intel Turbo Boost venga utilizzato . Se la gestione dell'alimentazione è impostata correttamente in Windows e a livello di BIOS hardware, durante un test Geekbench dovresti vedere che la velocità del core del tuo singolo processore supera la velocità di clock di base, il che mostra che Turbo Boost è abilitato. Con le macchine virtuali, la gestione dell'alimentazione deve essere impostata correttamente a livello di hypervisor.

Geekbench 3 è un benchmark multipiattaforma, processore e memoria che misura rapidamente le prestazioni del processore intero e a virgola mobile insieme alle prestazioni della memoria su un computer in pochi minuti, senza richiedere (o consentire) alcuna configurazione. Basta installare Geekbench 3, sbloccare la licenza ed eseguire il programma e vedrai i risultati in circa due-tre minuti. Puoi quindi decidere se caricare i tuoi risultati nel database online di Geekbench, in modo anonimo o utilizzando un account Geekbench. In base alla progettazione, Geekbench non misura le prestazioni di I/O.

Geekbench 3 ha un punteggio single-core complessivo e un punteggio multi-core complessivo, insieme a punteggi individuali per ciascuno dei ventisette test nel benchmark. Il punteggio single-core è molto utile per valutare le prestazioni del processore e della memoria a thread singolo, che è molto importante per i carichi di lavoro OLTP di SQL Server (poiché la maggior parte delle query OLTP finisce per essere eseguita solo su un singolo core del processore). Il punteggio multi-core è utile per valutare il processore multi-thread e le prestazioni della memoria dell'intera macchina, il che ti aiuta a misurare la capacità del processore della macchina per le query simultanee.

Con le licenze basate su core di SQL Server 2014, vuoi assicurarti di ottenere le migliori prestazioni a thread singolo possibili da ogni core del processore fisico per il quale devi acquistare una licenza core di SQL Server 2014 Enterprise Edition relativamente costosa. Il punteggio Single-Core di Geekbench 3 è un modo semplice e veloce per misurare sia il processore single-thread che le prestazioni della memoria.

Un problema che ho riscontrato di recente con i server con un numero elevato di core (sopra i 32 core logici) è che Geekbench 3 utilizzerà solo 32 core quando si utilizzano i benchmark a 32 bit o quando si utilizzano i benchmark a 64 bit dall'interfaccia utente grafica di Geekbench (almeno con build precedenti di Geekbench 3). Se disponi di un server con più di 32 core logici, dovrai utilizzare lo strumento della riga di comando per eseguire la versione a 64 bit di Geekbench in modo che utilizzi tutti i core del tuo sistema in modo da ottenere un Multi accurato -Punteggio core nel benchmark.

È abbastanza facile installare lo strumento da riga di comando ed eseguire la versione a 64 bit di Geekbench dalla riga di comando. Vai semplicemente al menu Strumenti e seleziona "Installa lo strumento del prompt dei comandi", quindi fai clic sul pulsante Installa come mostrato nella Figura 1:

Figura 1:installazione dello strumento del prompt dei comandi di Geekbench

Figura 2:finestra di dialogo di conferma dopo l'installazione dello strumento della riga di comando

Dopo aver terminato l'installazione dello strumento del prompt dei comandi, sarà necessario eseguire effettivamente la versione a 64 bit di Geekbench da un prompt dei comandi con le opzioni appropriate per ottenere i risultati desiderati, come mostrato nella Figura 3. Un esempio potrebbe essere geekbench_x86_64 –-verbose –-upload, che attiva l'output dettagliato e carica automaticamente i risultati nel database Geekbench online.

Figura 3:esempio di prompt dei comandi di Geekbench

Le Figure 4 e 5 mostrano i risultati comparativi per un sistema desktop veloce con un singolo processore Intel Core i7-3770K Ivy Bridge a 22 nm, quad-core e 32 GB di RAM, e un veloce sistema a due socket con due Intel Xeon E5 a 22 nm a dieci core. -2690 processori Ivy Bridge-EP v2 e 384 GB di RAM. Entrambi questi sistemi utilizzano processori di microarchitettura Ivy Bridge, ma il sistema desktop con un numero di core inferiore funziona a una velocità di clock più elevata (sia dalla velocità di clock di base di serie che da un leggero overclocking). Ciò si manifesta con un punteggio Single-Core significativamente più alto (3914 vs. 2877), che misura le prestazioni del processore a thread singolo e della memoria.

Il punteggio Multi-Core (che misura la capacità totale) è significativamente più alto per il server con 40 core logici e due socket rispetto al sistema desktop con otto core logici (40883 vs. 15578), ma il punteggio Multi-Core per il server non è cinque volte superiore al sistema desktop come ci si potrebbe aspettare. Perché è questo?

Ci sono diversi fattori in gioco qui. Innanzitutto, il sistema desktop dispone di un numero inferiore di core, ciascuno dei quali è più veloce dei core del sistema server. Tutti i core desktop si trovano su un singolo processore fisico e nodo NUMA, il che aiuta anche le prestazioni. Infine, la memoria desktop funziona a una velocità maggiore rispetto al sistema server, poiché il sistema server a due socket ha ogni slot di memoria popolato con memory stick da 16 GB.

Figura 4:Geekbench 3.2 Risultati da un sistema desktop Core i7-3770K Ivy Bridge

Figura 5:Geekbench 3.2 Risultati da un Intel Xeon E5-2690 v2 a due socket Sistema

Figura 6:Task Manager durante un test Geekbench utilizzando tutti i 40 core logici

Figura 7:CPU-Z durante un test Geekbench, che mostra Intel Turbo Boost in Effetto

L'esecuzione di Geekbench 3 richiede solo circa due-tre minuti e fornisce una vasta gamma di informazioni utili sulle prestazioni del processore e della memoria. Anche se non sei in grado o non vuoi eseguire Geekbench 3 sui tuoi server di database (durante una finestra di manutenzione o prima che vengano distribuiti in produzione), puoi comunque sfruttare il database di punteggi Geekbench online per trovare un sistema simile a quello che desideri valutare.

Quando esegui Geekbench 3, dovresti assicurarti di eseguire la versione Pro a 64 bit con licenza completa e dovresti guardare il Task Manager di Windows durante l'esecuzione del test per assicurarti che tutti i tuoi core logici vengano utilizzati durante il test di benchmark. Se necessario, potresti dover utilizzare la versione a riga di comando dello strumento per assicurarti che tutti i tuoi core vengano utilizzati durante il test.

Mi piacerebbe conoscere le tue opinioni ed esperienze sull'utilizzo di Geekbench e CPU-Z insieme per misurare le prestazioni del processore e della memoria dei tuoi server di database.