Perché "Forza rendering GPU" è disabilitato dalle opzioni sviluppatore predefinite?


12

Perché questa funzione è disabilitata? Quando lo accendo, molte app diventano più scattanti e fantastiche con una grafica fluida. Sembra che sarebbe bello se fosse abilitato per impostazione predefinita.

L'articolo collegato in questa domanda afferma che l'accelerazione hardware non era predefinita fino alla 4.0.

L'opzione "Forza rendering GPU" è quindi destinata alle app che utilizzano API per 3.0 e versioni precedenti?

Risposte:


12

Quando il rendering GPU è stato aggiunto per la prima volta, era molto inaffidabile. A volte sarebbe più lento del rendering del software e c'erano alcuni tipi di GUI con cui semplicemente non poteva funzionare. Per questo motivo, è stato compito dello sviluppatore dell'app testare la propria app con il rendering GPU e impostare un'opzione nel manifest dell'app (lo stesso posto in cui dichiara le sue autorizzazioni) per abilitare il rendering GPU per quell'app. L'opzione era principalmente quella di rendere più facile per gli sviluppatori testare l'effetto del rendering GPU sulla loro app. Questo ha senso perché:

  1. la maggior parte degli utenti non conosce o si preoccupa del rendering della GPU e non sa se dovrebbe essere attivato o disattivato per una determinata app; e
  2. l'impostazione deve essere davvero per-app, non a livello di dispositivo, perché alcune app non funzionerebbero con il rendering GPU attivato.

Dopo ulteriori sviluppi, quando è arrivato 4.0, il rendering GPU è diventato più affidabile, quindi è diventato il valore predefinito per tutte le app: ora tocca allo sviluppatore disabilitare esplicitamente il rendering GPU se causa un problema nella loro app. (Questo è molto raro ora.) L'opzione "Forza rendering GPU" è rudimentale e raramente viene utilizzata anche dagli sviluppatori ora, perché è già l'impostazione predefinita.


6

Per citare da un post XDA :

Abilitare questa preferenza nelle opzioni sviluppatore scarica il compito di eseguire il rendering di componenti della finestra come pulsanti, testo e calcoli grafici 2D complessi su GPU. Ciò comporta spesso un rendering dell'interfaccia utente molto più veloce, comprese le animazioni. Da un lato otterrai sicuramente una migliore frequenza dei fotogrammi (e quindi un'esperienza fluida) in tutto il sistema, ma potresti finire per usare più batteria. Su alcuni dispositivi, la GPU consuma più energia della CPU, quindi potresti notare una durata della batteria inferiore del 5-15% con l'opzione abilitata.

Consiglierei di abilitare questa opzione su dispositivi con CPU più deboli, ad es. Dovresti raramente abilitare questa opzione su CPU ARM 1.4ghz dual-core.

Offload del rendering dell'interfaccia utente su GPU ha ovvi vantaggi in modo che la CPU possa lavorare su altre attività importanti come l'IO del database, la manipolazione dei dati, i calcoli del layout e la risposta ad altri input dell'utente.

Detto questo, dovrebbe spettare all'utente decidere se desidera scambiare la durata della batteria con prestazioni. E, penso che la maggior parte delle persone vorrebbe che i loro telefoni durassero più a lungo e mantenessero le prestazioni a un ritmo accettabile.


0

È pensato per gli sviluppatori per testare le loro app, per questo motivo non è abilitato per impostazione predefinita.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.