Android Studio funziona più velocemente quando si usa la GPU?
Prima di tutto cerchiamo di capire cosa fanno di solito le GPU.
Questo è quello che succede quando si gioca a GTA 5 su una Nvidia Geforce 940MX, una GPU media.
Questo è quello che succede se si gioca a GTA 5 su Intel HD Graphics 5500.
Se vedete gli screenshot con attenzione, vedrete che il gioco che gira sulla GPU Nvidia ha una grafica fluida, mentre quello che gira su grafica integrata non è in grado di renderizzare la scena correttamente e inoltre non gira fluidamente.
Perciò perché le GPU sono così migliori delle CPU per l'elaborazione grafica?
Questo perché la grafica, specialmente quella che cambia in tempo reale, è difficile da renderizzare perché il valore di ogni pixel sullo schermo deve essere determinato simultaneamente nello stesso momento e questo calcolo davvero massiccio deve essere eseguito a circa 30-60 volte al secondo, a seconda della frequenza di aggiornamento. In una GPU, più unità di calcolo possono operare allo stesso tempo, il che le rende ideali per calcoli massicci riguardanti il rendering grafico.
GPUs non sono solo usate per l'elaborazione grafica, ma anche per calcoli di fascia alta nella scienza dei dati e nell'apprendimento automatico. Infatti, una delle ragioni per il riemergere del Deep Learning negli ultimi anni è la disponibilità di potenti GPU a prezzi inferiori rispetto a quelli precedenti.
Ora torniamo alla domanda in questione, se Android Studio lavora più velocemente usando le GPU o no.
Android Studio è un IDE sviluppato da Google e JetBrains che utilizza IntelliJ IDEA come IDE java. Ciò che lo rende lento a volte è la pesante interfaccia utente che si carica con un sacco di funzioni. Quindi, se si esegue Android Studio utilizzando una GPU Nvidia, si sarà in grado di spostare il lavoro pesante di rendering dell'interfaccia utente sulla GPU mentre la CPU gestisce i processi come la compilazione, la costruzione del progetto, ecc. e godere di un'esperienza di sviluppo migliore e più fluida.
A parte questo, se si sta cercando di costruire applicazioni che coinvolgono il data crunching, è possibile utilizzare servizi di calcolo cloud o utilizzare modelli di apprendimento automatico pre-addestrati piuttosto fare tutti i calcoli nell'applicazione. Ricordate, il computer su cui state sviluppando può essere equipaggiato con una GPU di fascia alta, ma i dispositivi su cui le vostre applicazioni verranno eseguite di solito non hanno tale hardware.