Vantaggi e svantaggi della condivisione della GPU

La legge di Moore è rimasta attuale per quasi mezzo secolo. I chip dei processori continuano a contenere un numero sempre maggiore di transistor e le tecnologie progrediscono ogni giorno. Con l'evoluzione della tecnologia, si evolve anche il nostro approccio all'informatica. L'aumento di alcune attività di calcolo ha influenzato in modo significativo lo sviluppo dell'hardware. Per esempio, i dispositivi originariamente progettati per l'elaborazione grafica sono ora strumenti fondamentali e accessibili per le moderne reti neurali.
Anche la gestione delle risorse informatiche si è trasformata. I servizi di massa utilizzano raramente i mainframe, come negli anni Settanta e Ottanta. Preferiscono invece i servizi cloud o la costruzione di infrastrutture proprie. Questo cambiamento ha modificato le richieste dei clienti, che si concentrano su una scalabilità rapida e on-demand e sulla massimizzazione dell'uso delle risorse informatiche allocate.
Le tecnologie di virtualizzazione e containerizzazione sono emerse come soluzioni. Le applicazioni sono ora confezionate in container con tutte le librerie necessarie, semplificando la distribuzione e la scalabilità. Tuttavia, la gestione manuale è diventata impraticabile man mano che il numero di container saliva a migliaia. Orchestratori specializzati come Kubernetes si occupano ora della gestione e della scalabilità. Questi strumenti sono diventati una parte essenziale di qualsiasi infrastruttura IT moderna.
Virtualizzazione dei server

Contemporaneamente, le tecnologie di virtualizzazione si sono evolute, consentendo la creazione di ambienti isolati all'interno di un singolo server fisico. Le macchine virtuali si comportano in modo identico ai normali server fisici, consentendo l'uso di strumenti di gestione standard. A seconda dell'hypervisor, spesso è inclusa un'API specializzata che facilita l'automazione delle procedure di routine.
Tuttavia, questa flessibilità comporta una riduzione della sicurezza. Gli aggressori hanno spostato la loro attenzione dal colpire le singole macchine virtuali allo sfruttare le vulnerabilità dell'hypervisor. Ottenendo il controllo di un hypervisor, gli aggressori possono accedere a tutte le macchine virtuali associate a piacimento. Nonostante i continui miglioramenti della sicurezza, i moderni hypervisor rimangono obiettivi interessanti.
La virtualizzazione tradizionale affronta due questioni fondamentali. Il primo: garantisce l'isolamento delle macchine virtuali l'una dall'altra. Le soluzioni bare-metal evitano questo problema, poiché i clienti affittano interi server fisici sotto il loro controllo. Ma per le macchine virtuali l'isolamento è basato sul software a livello di hypervisor. Un errore di codice o un bug casuale può compromettere questo isolamento, con il rischio di perdita o corruzione dei dati.
Il secondo problema riguarda la gestione delle risorse. Mentre è possibile garantire l'allocazione delle risorse a macchine virtuali specifiche, la gestione di numerose macchine presenta un dilemma. Le risorse possono essere sottoutilizzate, con conseguente riduzione del numero di macchine virtuali per server fisico. Questo scenario non è redditizio per l'infrastruttura e porta inevitabilmente a un aumento dei prezzi.
In alternativa, è possibile utilizzare meccanismi di gestione automatica delle risorse. Sebbene a una macchina virtuale vengano assegnate specifiche caratteristiche dichiarate, in realtà viene fornito solo il minimo richiesto entro questi limiti. Se la macchina ha bisogno di più tempo di processore o di RAM, l'hypervisor cercherà di fornirlo, ma non può garantirlo. Questa situazione è simile all'overbooking degli aerei, quando le compagnie aeree vendono più biglietti di quanti posti siano disponibili.
La logica è identica. Se le statistiche mostrano che circa il 10% dei passeggeri non arriva in tempo per il volo, le compagnie aeree possono vendere il 10% di biglietti in più con un rischio minimo. Se tutti i passeggeri arrivano, alcuni non troveranno posto a bordo. La compagnia aerea dovrà affrontare conseguenze minori sotto forma di risarcimento, ma probabilmente continuerà a seguire questa pratica.
Molti fornitori di infrastrutture adottano una strategia simile. Alcuni sono trasparenti al riguardo, dichiarando di non garantire la disponibilità costante di risorse informatiche ma di offrire prezzi significativamente ridotti. Altri utilizzano meccanismi simili senza pubblicizzarli. Scommettono che non tutti i clienti utilizzeranno costantemente il 100% delle risorse dei loro server e che, anche se alcuni lo faranno, saranno una minoranza. Nel frattempo, le risorse inattive generano profitto.
In questo contesto, le soluzioni bare-metal hanno un vantaggio. Garantiscono che le risorse allocate siano completamente gestite dal cliente e non condivise con altri utenti del fornitore dell'infrastruttura. In questo modo si eliminano gli scenari in cui il carico elevato di un utente di un server vicino influisce negativamente sulle prestazioni.
Virtualizzazione delle GPU

La virtualizzazione classica deve inevitabilmente affrontare la sfida dell'emulazione dei dispositivi fisici. Per ridurre i costi generali, sono state sviluppate tecnologie speciali che consentono alle macchine virtuali di accedere direttamente ai dispositivi fisici del server. Questo approccio funziona bene in molti casi, ma quando viene applicato ai processori grafici, crea limitazioni immediate. Ad esempio, se un server ha 8 GPU installate, solo 8 macchine virtuali possono accedervi.
Per superare questa limitazione è stata inventata la tecnologia vGPU. Essa divide una GPU in più GPU logiche, che possono essere assegnate alle macchine virtuali. Questo permette a ogni macchina virtuale di avere la sua "fetta di torta" e il loro numero totale non è più limitato dal numero di schede video installate nel server.
Le GPU virtuali sono più comunemente utilizzate nella creazione di VDI (Virtual Desktop Infrastructure) in aree in cui le macchine virtuali richiedono l'accelerazione 3D. Ad esempio, una postazione di lavoro virtuale per un designer o un pianificatore comporta tipicamente l'elaborazione grafica. La maggior parte delle applicazioni in questi campi esegue i calcoli sia sul processore centrale che sulla GPU. Questo approccio ibrido aumenta significativamente la produttività e garantisce un uso ottimale delle risorse di elaborazione disponibili.
Tuttavia, questa tecnologia presenta diversi svantaggi. Non è supportata da tutte le GPU ed è disponibile solo nel segmento dei server. Il supporto dipende anche dalla versione installata del sistema operativo e dal driver della GPU. vGPU ha un meccanismo di licenza separato, che aumenta notevolmente i costi operativi. Inoltre, i suoi componenti software possono potenzialmente fungere da vettori di attacco.
Recentemente sono state pubblicate informazioni su otto vulnerabilità che interessano tutti gli utenti di GPU NVIDIA®. Sei vulnerabilità sono state identificate nei driver delle GPU e due nel software vGPU. Questi problemi sono stati rapidamente risolti, ma ciò serve a ricordare che i meccanismi di isolamento in questi sistemi non sono impeccabili. Il monitoraggio costante e l'installazione tempestiva degli aggiornamenti restano i metodi principali per garantire la sicurezza.
Quando si costruisce un'infrastruttura per elaborare dati riservati e sensibili degli utenti, qualsiasi virtualizzazione diventa un potenziale fattore di rischio. In questi casi, un approccio bare-metal può offrire una qualità e una sicurezza migliori.
Conclusioni
La costruzione di un'infrastruttura informatica richiede sempre una valutazione dei rischi. Le domande chiave da considerare sono: I dati dei clienti sono protetti in modo sicuro? Le tecnologie scelte creano ulteriori vettori di attacco? Come si possono isolare ed eliminare le potenziali vulnerabilità? Rispondere a queste domande aiuta a fare scelte informate e a prevenire problemi futuri.
Noi di LeaderGPU siamo giunti a una conclusione chiara: attualmente la tecnologia bare-metal è superiore nel garantire la sicurezza dei dati degli utenti e al tempo stesso costituisce un'ottima base per la creazione di un cloud bare-metal. Questo approccio consente ai nostri clienti di mantenere la flessibilità senza assumersi i rischi aggiuntivi associati alla virtualizzazione delle GPU.
Vedi anche:
Aggiornato: 12.08.2025
Pubblicato: 23.01.2025