Casa Impresa Prova pratica dell'iniziatore StarWind NVMe-oF per Windows

Prova pratica dell'iniziatore StarWind NVMe-oF per Windows

by Brian Beeler

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.

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

Fino alla commercializzazione, StarWind offriva il proprio iniziatore NVMe-oF per Windows come strumento gratuito per casi d'uso di sviluppo e PoC. Loro ancora offrire la versione gratuita per coloro che vogliono giocare, ma la versione di spedizione GA è quella che vedremo oggi. In effetti, se stai cercando un iniziatore NVMe-oF per Windows, probabilmente stai consumando StarWind IP. Offrono la soluzione OEM a una varietà di partner che necessitano di ampliare le proprie offerte.

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 clienti lo è Dell PowerEdge R740 server. Ognuno di essi esegue due CPU Intel Xeon Gold 6130 a 2.1 GHz con 256 GB di DRAM. Per la connettività, utilizziamo schede NIC NVIDIA ConnectX-5 EN 100GbE (MCX516A-CCAT). I server sono installati con Windows Server 2019 Standard Edition, sfruttando 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 archiviazione.

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 dell'host, ne utilizziamo otto Intel P5510 SSD NVMe di quarta generazione. Gli SSD sono divisi in due lotti da quattro per l'allineamento NUMA con le CPU. Sono configurati in RAID4 per le massime 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 | Facebook | RSS feed