mercoledì 13 gennaio 2016

Star Wars, la Forza e la potenza dell’elaborazione multi-core parallela: come ottenere il massimo dai carichi di lavoro virtualizzati

di George Teixeira, President & CEO, DataCore Software

Negli Anni ’80, i film originali di Star Wars mostravano incredibili tecnologie future e facevano continuamente riferimento al “potere della Forza”. L’ultimo episodio ha battuto tutti i record al botteghino e mi ha fatto riflettere su quanti progressi abbiano fatto in questi anni la tecnologia informatica e l’IT, anche se rimane ancora molto da scoprire.

Molte delle trovate immaginate allora sono diventate realtà, soprattutto grazie alla Legge di Moore e alla crescente potenza derivante dalla rivoluzione dei microprocessori. Per esempio, software per la virtualizzazione dei server come VMware hanno portato a radicali riduzioni di costi, aumenti della produttività e a velocità di clock delle CPU sempre più rapide. Oggi i microprocessori sono pervasivi, presenti in PC, portatili, smartphone e dispositivi intelligenti di tutti i tipi. Il completo sfruttamento della potenza promessa dall’utilizzo parallelo di molti microprocessori è però ancora lontano e l’I/O continua a essere il principale collo di bottiglia prestazionale che impedisce al settore di compiere una nuova rivoluzione nel consolidamento, nelle prestazioni e nella produttività.

L’informatica virtuale è ancora limitata dall’I/O. Proprio come chi guida in città imbottigliato nel traffico può solo sognare le vetture volanti, l’IT vagheggia il giorno in cui i carichi applicativi potranno raggiungere la velocità della luce.

Come è possibile che con elaborazione multi-core, app virtualizzate, abbondante RAM e grandi quantità di flash si debbano ancora fare i conti con macchine virtuali (VM) affamate di I/O mentre molti processori rimangono inattivi? È certamente possibile far girare diversi carichi di lavoro indipendenti allo stesso tempo su un unico server utilizzando risorse di memoria e CPU separate, ma è lì che cominciano i problemi. I molti carichi di lavoro in fase di elaborazione generano richieste di I/O in concorrenza tra loro, mentre un solo core è incaricato dell’elaborazione I/O. Questo limite architetturale soffoca le prestazioni applicative. Invece di avere un server che svolge grandi quantità di lavoro, l’IT è costretta ad aggiungere più server e più rack per superare i colli di bottiglia dell’I/O, e questa tendenza va contro “le riduzioni di costi e gli aumenti della produttività” che sono il fulcro della virtualizzazione.

Ciò che accade nella realtà è che poche VM che girano simultaneamente su processori multi-core si occupano di incredibili volumi di lavoro e contemporaneamente ingolfano il solo processore impegnato nell’I/O seriale. E invece di una marea di lavoro eseguito, emerge un rivolo di I/O. Nell’IT si ha quindi la stessa sensazione che provano i ragazzi cresciuti guardando Star Wars, che si chiedono dove sono le loro astronavi e quando potranno viaggiare alla velocità della luce.

La buona notizia è che non tutto è perduto. DataCore ha diverse menti brillanti al lavoro per offrire a tutti una svolta rivoluzionaria nell’I/O: la tecnologia Parallel I/O, che  lascia fluire il traffico virtualizzato senza rallentamenti. L’esclusiva architettura di I/O parallelo software-defined è indispensabile per ottenere il massimo dalle odierne e potenti infrastrutture di elaborazione multi-core/parallele. Sfruttando il software per gestire l’elaborazione I/O tramite molti core differenti allo stesso tempo, si eliminano i colli di bottiglia dell’I/O e si raggiungono nuovi livelli di riduzione dei costi e di aumento della produttività. La notizia ancora più bella è che questa tecnologia è già disponibile.

Proprio come Star Wars ha battuto ogni record mondiale, scoprite come DataCore ha recentemente ottenuto il nuovo record mondiale nel rapporto prezzo/prestazioni su un sistema iper-convergente (con il benchmark indipendente SPC1 dello Storage Performance Councils). DataCore ha fatto registrare anche  i migliori risultati di sempre in termini di spazio occupato e tempi di risposta, e così – anche se le prestazioni  non raggiungono ancora la velocità della luce – DataCore ha surclassato l’esistente non una, ma numerose volte. Verificate direttamente i risultati dei benchmark in questo articolo pubblicato su Forbes: The Rebirth of Parallel I/O.

Come si ottiene tutto questo? Il software di DataCore tiene attivamente monitorato il carico di I/O generato da VM concorrenti tra loro, adattandosi e rispondendo dinamicamente con l’assegnazione di un numero adeguato di core per elaborare il traffico in entrata e uscita. In questo modo le VM non si trovano più ad attendere che un flusso di I/O seriale si renda disponibile. E se i carichi di lavoro I/O diventassero più leggeri, i core delle CPU sarebbero pronti a svolgere maggiori quantità di attività di calcolo.

Questo risolve non solo gli attuali problemi di prestazioni degli ambienti virtualizzati multi-core, ma aumenta in modo importante anche la potenziale densità di VM per ogni server fisico. In pratica si può “fare di più con meno risorse”. Questo si traduce in un minor numero di server o di rack e quindi in meno spazio occupato, minori consumi e riduzione del raffreddamento. In pratica, è possibile ottenere una notevole riduzione dei costi attraverso il massimo sfruttamento di CPU, memoria e spazio di storage consentendo alla virtualizzazione di mantenere le sue promesse di produttività.
Per saperne di più potete il white paper di DataCore

 Waiting on I/O: The Straw that Broke Virtualization’s Back - http://info.datacore.com/waiting-on-io-the-straw-that-broke-virtualizations-back 


(Aspettando l’I/O: la goccia che ha fatto traboccare la virtualizzazione).

Nessun commento: