StorageReview.com

Prova pratica dell'iniziatore StarWind NVMe-oF per Windows

Impresa  ◇  Archiviazione aziendale

Windows è ottimo per molte cose, c'è una ragione per cui è il sistema operativo numero uno al mondo. Detto questo, non è perfetto, soprattutto quando si tratta di adottare nuovi standard di archiviazione. Pertanto, esiste un’enorme opportunità per le aziende intraprendenti di sviluppare soluzioni per i negozi Windows. Poiché gli SSD NVMe continuano a dominare le aziende, diventando lo standard per lo storage dei server SSD, aumenta la domanda di poter condividere tale storage. Purtroppo in Windows questo è un problema, almeno fino a poco tempo fa. All'inizio di quest'anno StarWind ha commercializzato un iniziatore NVMe-oF per Windows.

Iniziatore NVMe-oF per server Windows Intel

Prima della commercializzazione, StarWind offriva il suo NVMe-oF Initiator per Windows come strumento gratuito per lo sviluppo e per casi d'uso PoC (Proof of Concept). L'azienda continua a offrire la versione gratuita a chi desidera provarla, ma oggi ci concentreremo sulla versione finale disponibile. Infatti, se state utilizzando un qualsiasi NVMe-oF Initiator per Windows, è molto probabile che stiate sfruttando la proprietà intellettuale di StarWind. L'azienda fornisce la soluzione in modalità OEM a diversi partner che necessitano di ampliare la propria offerta.

Iniziatore NVMe-oF per la configurazione di Windows

StarWind NVMe-oF Initiator per Windows è una semplice installazione su qualsiasi host Windows. Non è necessario hardware specializzato o componenti Windows aggiuntivi. Il software è certificato Windows (Server 2019 e Windows 10) e testato per la compatibilità con i principali fornitori di storage NVMe-oF. Nel nostro scenario abbiamo una configurazione molto semplice di un host di archiviazione e quattro client.

Iniziatore starwind NVMe-oF per Windows in Gestione dispositivi

Ciascuno dei quattro client è un server Dell PowerEdge R740 . Ognuno di essi esegue due CPU Intel Xeon Gold 6130 a 2.1 GHz con 256 GB di DRAM. Per la connettività, utilizziamo schede di rete NVIDIA ConnectX-5 EN 100GbE (MCX516A-CCAT). I server hanno installato Windows Server 2019 Standard Edition, utilizzando StarWind NVMe-oF Initiator per Windows versione 1.9.0.455. Per i test su Linux, abbiamo utilizzato CentOS 8.4.2105 (kernel – 4.18.0-305.10.2) con nvme-cli 1.12. I server sono collegati direttamente all'host di storage.

Iniziatore StarWind NVMe-oF per architettura Windows

L'host di archiviazione è un server Intel OEM (M50CYP2SB2U) dotato di due CPU Intel Xeon 8380 a 2.3 GHz con 512 GB di DRAM. Abbiamo utilizzato nuovamente le NIC NVIDIA ConnectX-5 EN 100GbE (MCX516A-CDAT), questa volta ne avevamo quattro nell'host. In questo caso utilizziamo CentOS 8.4.2105 (kernel – 5.13.7-1.el8.elrepo) e SPDK v21.07.

Iniziatore NVMe-oF per Windows P5510

All'interno del sistema host, utilizziamo otto SSD Intel P5510 Gen4 NVMe. Gli SSD sono suddivisi in due gruppi da quattro per l'allineamento NUMA con le CPU. Sono configurati in RAID0 per massimizzare le prestazioni.

Iniziatore NVMe-oF per prestazioni Windows

Per questo test, abbiamo eseguito i seguenti benchmark tramite FIO sfruttando sia gli iniziatori Linux che quelli Windows.

  • Lettura casuale 4K – 16 thread, 32 profondità di coda
  • Scrittura casuale 4K – 8 thread, 4 profondità di coda
  • Lettura casuale 64K – 4 thread, 32 profondità di coda
  • Scrittura casuale 64K – 4 thread, 1 profondità di coda
  • Lettura sequenziale 1M – 2 thread, 8 profondità di coda
  • Scrittura sequenziale 1M – 1 thread, 8 profondità di coda

La durata di un singolo test è di 3600 secondi (1 ora). Prima di effettuare il benchmark delle operazioni di scrittura, lo storage è stato riscaldato per 3600 secondi (1 ora). Tutti i test sono stati eseguiti tre volte e il valore medio è stato utilizzato come risultato finale.

Nel nostro primo gruppo che ha esaminato le prestazioni dell'iniziatore Linux NVMeoF su 4 client, abbiamo misurato 5.54 milioni di IOPS con una larghezza di banda di 21.6 GB/s con una latenza di 0.369 ms in lettura casuale 4K. Le prestazioni di scrittura casuale 4K hanno misurato 1.58 milioni di IOPS con una larghezza di banda di 6.2 GB/s con una latenza di 0.08 ms.

Passando ai trasferimenti a blocchi di grandi dimensioni, abbiamo misurato sia 64K casuali che, infine, un test sequenziale da 1 milione incentrato sulla larghezza di banda attraverso la struttura. Nella lettura casuale a 64K abbiamo misurato 46.6 GB/s a 0.69 ms di latenza e 7.2 GB/s a 0.14 ms di latenza in scrittura. Il sequenziale da 1 milione è arrivato a 42.9 GB/s in lettura con 1.48 ms di latenza e 25.4 GB/s a 1.26 ms di latenza in scrittura.

Successivamente, siamo passati a Windows dove abbiamo sfruttato l'iniziatore StarWind NVMeoF sugli stessi quattro client. Qui abbiamo misurato 4.17 milioni di IOPS in lettura casuale 4K o 16.3 GB/s con 0.35 ms di latenza. La scrittura casuale 4K è arrivata a 1.54 milioni di IOPS o 6 GB/s con 0.07 ms di latenza.

Siamo quindi passati a una dimensione di trasferimento maggiore di 64K con lo stesso profilo di accesso casuale. Qui abbiamo misurato 46.6 GB/s in lettura a 0.68 ms di latenza e 7.2 GB/s in scrittura a 0.13 ms di latenza. Passando al nostro ultimo profilo di carico di lavoro con una dimensione di trasferimento di 1 milione con un modello di accesso sequenziale, abbiamo misurato 42.9 GB/s in lettura con una latenza di 1.38 ms e 25.2 GB/s in scrittura con una latenza di 1.14 ms.

Confrontando i dati testa a testa, sia le prestazioni di Windows che quelle di Linux erano molto simili tra loro, ad eccezione della lettura casuale 4K. In tutti gli altri test il divario prestazionale era inferiore al 3%. La differenza principale risiede davvero nel sovraccarico della CPU aggiunto durante lo scorrimento nello stack di archiviazione di Windows. Ciò corrisponde a una differenza da 2.7 a 3.7 volte, dove l'aumento dell'I/O stesso aumenta maggiormente l'utilizzo della CPU.

Passare da un utilizzo della CPU del 16% in Linux al 44% in Windows è un salto piuttosto ampio, ma passare dal 3.5% al ​​9% non verrebbe avvertito nella stessa misura. Per le applicazioni che devono essere eseguite in Windows o per i reparti IT che in generale sono più focalizzati su Windows, l'obiettivo principale di StarWind era offrire funzionalità e prestazioni NVMeoF che erano chiaramente in grado di ottenere.

Conclusione

L'obiettivo di questa analisi non è determinare il modo migliore o il modo più veloce per implementare la propria soluzione NVMe-oF. La maggior parte delle distribuzioni di storage seguono l'applicazione, rispetto all'applicazione che segue lo storage. Detto questo, esistono diversi motivi per cui un'organizzazione potrebbe voler utilizzare Windows. Potrebbero essere applicazioni specifiche, infrastruttura esistente, ragioni di costo o qualsiasi altro numero di problemi che rendono Windows la piattaforma preferita. Almeno ora, con NVMe-oF Initiator per Windows di StarWind, abbiamo un'opzione quando si tratta di condividere SSD NVMe e avvicinarli il più possibile ai sistemi applicativi.

Iniziatore NVMe-oF per chassis anteriore Windows

Ignorando per un momento il sistema operativo client, la limitazione principale nei nostri test dipende in realtà dai collegamenti di rete tra i sistemi. Nel nostro caso, sfruttando NIC da 100 Gb, abbiamo saturato la rete e raggiunto i 46.6 GB/s sia in ambienti Linux che Windows. Anche il test di lettura casuale di picco 4K in Windows ha spinto 16.3 GB/s, che corrisponderebbe a più di sei collegamenti 25GbE per I/O casuale. La rete finisce per svolgere un ruolo più importante per NVMe-oF poiché le prestazioni NVMe, in qualsiasi modo le si suddivida, possono assorbire molto traffico.

Ma alla fine, il nostro obiettivo era valutare quanto bene funziona l'iniziatore StarWind. Funziona davvero bene. Considerando che l’alternativa è “No NVMe-oF per te!” in Windows, siamo felici di avere qualsiasi opzione. Sì, c'è un impatto negativo sulla CPU per questo privilegio, ma anche se le differenze percentuali da Linux a Windows sono spaventose, al di fuori delle letture casuali 4K l'impatto percepito è minimo. Se non sei sicuro che sia la soluzione giusta, StarWind ti consente di provarlo gratuitamente. È così semplice da installare che ci sono tutti i motivi per provarlo e vedere quanto bene NVMe-oF può funzionare per le tue applicazioni in Windows.

Pagina del prodotto StarWind

Modulo di richiesta demo StarWind

Interagisci con StorageReview

Newsletter | YouTube | Podcast iTunes / Spotify | Instagram | Twitter | TikTok | Feed RSS

Brian Beeler

Brian ha sede a Cincinnati, Ohio ed è capo analista e presidente di StorageReview.com.