Apple vuole accelerare i Mac con multiple eGPU virtuali

Apple ha registrato un brevetto per sfruttare multiple eGPU virtuali sul Mac

Quando il processore è impegnato i software posso sfruttare eGPU virtuali riducendo o azzerando attese e rallentamenti. In un nuovo brevetto Apple descrive l’impiego di multiple unità di elaborazione eGPU virtuali per accelerare i Mac

Apple ha registrato un brevetto nel quale si cita espressamente l’uso di “multiple unità di elaborazione grafica (GPU) virtuali” da sfruttare con il Mac. Apple e Blackmagic hanno collaborato alla creazione di unità esterne Thunderbolt 3: l‘eGPU con processore grafico Radeon Pro 580 con 8GB di memoria GDDR5 e l’eGPU Pro con processore grafico Radeon RX Vega 56 e 8GB di memoria HBM2.

A febbraio di quest’anno con l’update a macOS 10.13.4 è stato integrato il supporto nativo per processori grafici esterni. Sui tradizionali computer la GPU si occupa di compiti quali la codifica e il rendering in abbinamento ad applicazioni complesse per l’elaborazione video o il 3D.
Apple ha registrato un brevetto per sfruttare multiple eGPU virtuali sul Mac

Una virtual eGPU (VGPU) permette di condividere la potenza delle GPU tra le macchine virtuali e le applicazioni virtuali, aumentando la potenza dell’ambiente di lavoro (li lavoro normalmente eseguito dalla CPU viene demandato alla GPU) creando GPU virtuali che consentono a ogni macchina virtuale di condividere la GPU fisica installata sul server. Affinché sia possibile sfruttare le Virtual GPU, uno specifico software di virtualizzazione deve tenere conto del driver grafico per ogni macchina virtuale.

Simili tecnologie sono state create da Nvidia che mette a disposizione ambienti di VDI con NVIDIA Virtual GPU con interi stack di virtualizzazione e funzionalità di gestione e monitoraggio della GPU a livello di host, macchina virtuale e applicazione.

Nel suo brevetto Apple spiega che lo sfruttamento delle GPU a volte comporta periodi di stallo nei quali una o più unità non eseguono calcoli. I tempi di attesa possono essere causati, ad esempio, dalla necessità di accedere alla memoria, perché l’unità di esecuzione è in attesa di nuovi dati in arrivo, elemento che a volte, comporta attesa in idle. Ancora, un primo programma può essere in esecuzione e un altro ancora attendere che l’altro completi un’operazione.

Potrebbe essere vantaggioso per il secondo programma sfruttare la GPU quando il primo programma è in idle, ma questo a volta comporta un investimento eccessivamente oneroso. Apple spiega che problematiche di questo tipo possono essere risolte con le VGPU, elementi che appaiono al software come vere e proprie GPU hardware indipendenti. Non sappiamo quali siano le intenzioni di Apple ma l’obiettivo potrebbe essere la virtualizzazione dell’hardware delle GPU offrendo prestazioni migliori, senza dimenticare la compatibilità con le applicazioni esistenti.

Come sempre, ricordiamo che Apple brevetta annualmente centinaia di brevetti e non sempre questi diventano prodotti/servizi veri e propri.