Waarom is deze functie uitgeschakeld? Wanneer ik het aanzet, worden veel apps pittig en geweldig met vloeiende graphics. Het lijkt erop dat het “leuk zou zijn als het standaard was ingeschakeld.
Het gelinkte artikel in deze vraag zegt dat hardwareversnelling niet was” t standaard tot 4.0.
Is de optie “Force GPU-rendering” dan gericht op apps die API 3.0 en lager gebruiken?
Answer
Toen GPU-rendering voor het eerst werd toegevoegd, was dit erg onbetrouwbaar. Soms zou het langzamer zijn dan het renderen van software, en er waren een aantal soorten GUIs waarmee het gewoon niet kon werken. Om deze reden was het aan de app-ontwikkelaar om hun app te testen met GPU-rendering en een optie in te stellen in de app “s manifest (dezelfde plaats waar het zijn rechten verklaart) om GPU-rendering voor die app in te schakelen. De optie was vooral om het voor ontwikkelaars gemakkelijker te maken om het effect van GPU-rendering op hun app te testen. Dit is logisch omdat:
- de meeste gebruikers niet weten wat GPU-rendering is en niet weten of het aan of uit moet staan voor een bepaalde app; en
- de instelling moet echt per app zijn, niet voor het hele apparaat, omdat sommige apps gewoon niet werken als GPU-rendering is ingeschakeld.
Na verder ontwikkeling, toen 4.0 kwam, werd GPU-rendering betrouwbaarder, dus het werd de standaard voor alle apps: het is nu aan de ontwikkelaar om GPU-rendering expliciet uit te schakelen als het een probleem in hun app veroorzaakt. (Dat is nu erg zeldzaam.) De optie “Force GPU rendering” is rudimentair en wordt zelfs nu nog maar zelden door ontwikkelaars gebruikt, omdat het al de standaard is.
Opmerkingen
- Weet jij hoe je Force GPU-rendering met build.prop moet tweaken?
Antwoord
Om te citeren uit een XDA-bericht :
Deze voorkeur inschakelen in ontwikkelaarsopties ontlast de taak van het renderen van venstercomponenten zoals knoppen, tekst en complexe 2D grafische berekeningen naar GPU. Dit resulteert vaak in een veel snellere UI-rendering inclusief animaties. Aan de ene kant zul je zeker een betere framesnelheid (en dus een soepele ervaring) bereiken in het hele systeem, maar het kan zijn dat je meer batterij gebruikt. Op bepaalde apparaten verbruikt de GPU meer stroom dan de CPU, daarom kan de levensduur van de batterij 5-15% lager zijn als de optie is ingeschakeld.
Ik zou aanraden om deze optie aan te zetten op apparaten met zwakkere CPUs, bijv. U zou dit zelden moeten inschakelen op een dual-core 1,4 GHz ARM CPU.
Het overbrengen van UI-rendering naar GPU heeft duidelijke voordelen, zodat de CPU kan werken aan andere belangrijke taken zoals database-IO, gegevensmanipulatie, lay-outberekeningen en reageren op andere gebruikersinvoer.
Dat gezegd hebbende, het zou aan de gebruiker moeten zijn om te beslissen of hij de batterijduur wil ruilen voor prestatie. EN, ik denk dat de meeste mensen willen dat hun telefoons langer meegaan en dat de prestaties op een acceptabel tempo blijven.
Antwoord
Het is bedoeld voor ontwikkelaars om hun apps te testen, daarom is het niet standaard ingeschakeld.