Nei mesi scorsi ho deciso di mettere alla prova la soluzione eGPU con i MacBook Pro dotati di porta Thunderbolt 3, pubblicando i miei risultati nella recensione dell’ottimo case AKiTiO Node Pro. Uno degli aspetti più importanti che è venuto fuori è che la potenza della GPU esterna non poteva essere sfruttata se non con le app che ne prevedevano l’abilitazione dalle proprie preferenze. Premiere Pro e DaVinci Resolve lo fanno, Final Cut Pro no, così come moltissimi altri software e giochi.
In molti casi la soluzione è relativamente semplice, perché basta collegare uno schermo esterno sulla eGPU per metterla all’opera, ma abbiamo anche visto che questo porta a scontrarsi con altri limiti, tra cui l’impossibilità di avere un’uscita UHD 60Hz per carenza di banda. Per di più ci sono software, tra cui proprio Final Cut Pro, che non utilizzano la scheda grafica esterna pur avendo l’interfaccia renderizzata su uno schermo collegato a quest’ultima. L’ideale sarebbe che macOS desse la possibilità di decidere su quali software abilitare l’uso della eGPU… e qualcuno ha scoperto come fare.
Sul forum dell’attivissimo eGPU.io è infatti venuto fuori lo script set-eGPU.sh che con un semplice menu nel Terminale consente di selezionare a quali app “imporre” l’utilizzo della scheda grafica collegata esternamente, anche utilizzando lo schermo interno del portatile. La cosa interessante è che non va a modificare kext di sistema, non richiede di disabilitare SIP e null’altro di simile, in quanto utilizza una semplicissima opzione prevista nativamente da Apple ma lasciata nascosta. In sostanza lo script non fa altro che rendere più comoda l’applicazione della modifica su singole app o su tutte, nonché il rollback con un solo comando, ma il tutto sarebbe eseguibile anche manualmente con questi comandi:
# Write to application name defaults write -app "<app name>" GPUSelectionPolicy -string preferRemovable # Write to application plist file defaults write com.xxx.xxxx GPUSelectionPolicy -string preferRemovable # To remove this preference defaults delete -app "<app name>" GPUSelectionPolicy
Se Apple ha mantenuto la cosa nascosta ci possono essere diversi motivi, tra cui quello dell’instabilità, e di questo bisogna tener conto. Tuttavia 9to5Mac ha già eseguito delle prove che sembrano promettere molto bene, specialmente per i quanti utilizzano Final Cut Pro e non potevano fino a ieri beneficiare dei miglioramenti prestazioni dovuti ad una eGPU sui portatili.
Siamo ancora in fase work-in-progress ma qualche beneficio concreto si può certamente ottenere. Va comunque considerato che rimane un corposo taglio di banda sulle GPU PCI-Express 3.0 più prestanti e che questo sarà ancora più prominente in futuro, con l’arrivo del prossimo PCI-Express 4.0. Come dire: non è una soluzione definitiva ma dopotutto nessuna lo è davvero quando si tratta di informatica.