Adreno Tools helpottaa päivitettyjen näytönohjainten käyttämistä älypuhelimessa ilman rootia

Adreno Toolsin ansiosta voit nyt päivittää Android-laitteen näytönohjaimen ilman pääkäyttäjän oikeuksia. Lue lisää saadaksesi lisätietoja!

Älypuhelimille suunnatut verkkosivustot keskittyvät yleensä vain uusimpiin laitteisiin, mutta suuri osa käyttäjistä päättää olla päivittämättä puhelimiaan syystä tai toisesta. Lukuun ottamatta laitteistovikoja, monilla näistä laitteista saattaa olla vielä vuosia edessään, koska omistajiensa mielestä ne toimivat edelleen hyvin. Sillä aikaa mukautetut ROM-levyt voivat pitää vanhat älypuhelimet hengissä iät ja ajat, voi olla painajainen moddereille pitää kamerat ja näytönohjaimet ajan tasalla ilman valmistajan virallista tukea.

GPU-ohjainten päivittäminen Androidissa

Toisin kuin älypuhelinekosysteemi, päivittää tietokoneen näytönohjain on asia, jota voit aina ajatella. Tämä on mahdollista PC: n laitteisto-ohjainten modulaarisen arkkitehtuurin ansiosta, mikä mahdollistaa tehokäyttäjille sen puuhaile suljetun lähdekoodin ohjainpakettien parissa tai valitse jopa avoimen lähdekoodin ohjaimia OEM-toimitusten sijaan binäärit. Androidin tapauksessa ohjainpäivitykset tulevat kuitenkin yleensä puhelimeesi vain suurempien käyttöjärjestelmäpäivitysten rinnalla.

Päivitetyt GPU-ohjaimet voivat olla hyödyllisiä virheiden korjaamisessa, grafiikan suorituskyvyn parantamisessa tai uusien ominaisuuksien lisäämisessä OpenGL- tai Vulkan-sovellusliittymistä. Nykyään, älypuhelimet ovat suurempia ja nopeampia kuin koskaan, joten ne ovat täydellinen ajoneuvo pelaamiseen, joten PC-tyyppisen ajurisuunnittelun siirtäminen niihin tekee järkeä.

Itse asiassa Google teki sen mahdolliseksi yrittäessään moduloida Androidia Project Treblen kautta kääriä tietyn alustan näytönohjainsarja sovellukseksi ja päivittää sen Playn kautta Store. Siitä lähtien useat valtavirran Android OEM: t ovat tehneet yhteistyötä Googlen ja suurten grafiikkasuorittimen toimittajien, mukaan lukien ARM ja Qualcomm, kanssa jakaa päivityksiä puhelimiensa GPU-ajureille riippumaton suuremmista ohjelmistojulkaisuista.

Vähentääkö päivitettävä näytönohjainten suunnittelu pirstoutumista?

Kyllä, jossain määrin. Muutama huolestuttava kysymys on kuitenkin edelleen vastaamatta. Ensinnäkin Googlen mekanismi ei tarjoa helppoa tapaa korvata suljetun lähdekoodin toimittajaohjainta kolmannen osapuolen avoimen lähdekoodin tarjouksella. Voit tietysti vaihtaa manuaalisesti kohdelaitteen toimittajaosion ohjainpaketin, jos sinulla on sellainen pääkäyttäjän oikeudet ja jotenkin saada käsiisi tarvittavat tiedostot, mutta se ei ole ihanteellinen ratkaisu monille.

Seuraavaksi tulee vakaus vs. tehostaminen paradoksi. Android ylläpitää hierarkkista järjestelyä grafiikkaohjaimen lataamisessa. Vaikka tehdasasennetun koontiversion ja uudemman päivitetyn julkaisun välillä voidaan vaihtaa käyttämällä Kehittäjävaihtoehdot => Grafiikkaohjaimen asetukset Sovelluskohtaisesti se riippuu viime kädessä OEM: n päätöksestä, milloin grafiikkaohjaimen päivitys on suoritettava. Tästä johtuen loppukäyttäjä ei voi hyödyntää huippuluokan ajurien koontiversioita suoraan SoC-valmistajalta, koska OEM-valmistajat ovat edelleen vastuussa päivitysten julkaisemisesta.

Kuten aiemmin mainittiin, GPU-ajureiden päivittäminen on mahdollista pääkäyttäjän oikeuksilla, mutta mikään ei voi voittaa ei-root-menetelmää. Kiitos XDA: n vanhemmalle jäsenelle ohjesäännöt, meillä on nyt nerokas ratkaisu nimeltä Adreno työkalut joka mahdollistaa lennossa GPU-ohjainten muokkaukset tai vaihdot Androidissa – myös ilman pääkäyttäjää! Kehittäjän taustalla Androidin siirtämisessä Nintendo Switchiin oli varmasti ratkaiseva rooli tässä hankkeessa, sillä koko projekti on saanut alkunsa Skyline, avoimen lähdekoodin, keskeneräinen Nintendo Switch -emulaattori Androidille.

Fellow Skyline -kehittäjä Merkitse "Pixelylon" esitti ajatuksen ajonaikaisen aseman korvaamisesta ohjesäännöt, josta lopulta tuli Adreno Tools. Koska Adreno Tools on juureton kirjasto, se voi auttaa mitä tahansa tavallista sovellusta lataamaan mukautettuja GPU-ohjaimia, käsittelemään BCn-kuvioita ja uudelleenohjaamaan tiedostotoimintoja lisää monimutkaisia ​​muutoksia Qualcommin Adreno-grafiikkasuorittimiin. Se tekee sen kytkeytymällä järjestelmäkirjastoihin ja vaihtamalla saumattomasti uuteen kuljettaja. Erityisesti Malin GPU: ille ei ole vielä tukea.

Koska ohjaimen alkuperää ei ole rajoitettu, harrastajat voivat ladata myös kolmannen osapuolen ohjaimia Adreno Toolsin kautta. Tämä on erityisen hyödyllistä niille, jotka haluavat kokeilla Turnipia – avoimen lähdekoodin Vulkan-ohjainta Qualcomm Adreno -grafiikkalaitteistolle, joka kuuluu Freedreno sateenvarjo. Esimerkiksi, AetherSX2, PlayStation 2 -emulaattori Androidille käyttää jo Adreno Toolsia antaakseen loppukäyttäjille valinta valita Nauris OEM-ohjaimen sijaan paremman suorituskyvyn saavuttamiseksi.

Adreno Tools GitHubissa

Miten hyödyn tästä?

Muista, että Adreno Tools -projekti toimitetaan ohjelmistokirjastona. Se tarkoittaa, että et löydä esikäännettyä APK-tiedostoa, joka maagisesti mahdollistaisi mahdollisuuden käyttää ulkoista näytönohjainpinoa koko järjestelmässä. Sen sijaan kehittäjän on sisällytettävä kirjasto projektiinsa, jotta hänen sovelluksensa voi tarjota mahdollisuus ladata päivitetyt grafiikkaohjaintiedostot tai kolmannen osapuolen vaihtoehto ilman pääkäyttäjää pääsy. Juuri tällä tavalla Skyline- ja AetherSX2-kehittäjät käyttävät Adreno Toolsia juuri nyt.

Loppukäyttäjän näkökulmasta Adreno Tools ei yksin pysty ratkaisemaan kaikkia Androidin GPU-ohjaimen toteutuksen rajoituksia. Se on vain työkalu, jolla kehittäjäyhteisö voi ohittaa joitain Android-laitteiden näytönohjainpäivitysten suurimmista esteistä – siinä se. Voit saada sen hyödyt vain sovelluksen kautta, mutta järjestelmän laajuinen manuaalinen ohjainpäivitys vaatii silti pääkäyttäjän oikeudet.

Mitä voin tehdä, jos minulla on root?

Jos olet tehokäyttäjä, jolla on juurtunut laite, voit suorittaa laitteellesi päivitetyn näytönohjaimen pakotetun asennuksen koko järjestelmän laajuisesti. Tätä varten sinun on purettava päivitetystä laiteohjelmistopaketista ajuri BLOB (Binary Large OBject) -tiedostot, jotka sisältävät valmiiksi pakatut ohjelmistobinaarit vuorovaikutusta varten GPU: n kanssa. Voit käyttää laiteohjelmistoa eri laitteesta, mutta ohjaimen on vastattava kohdelaitteen samaa GPU-perhettä.

Kun tarvittavat tiedostot on purettu, voit pakata ne Magisk-moduuliksi ja asentaa sen kohdeälypuhelimeen korvataksesi olemassa olevat toimittajan ohjaimet järjestelmättömästi. Tietenkin prosessi on hieman monimutkaisempi kuin miltä se kuulostaa. Saatat joutua huolehtimaan käyttöliittymän yhteensopimattomuudesta vanhojen ja päivitettyjen ajureiden välillä, mikä olisi tarpeen.

"Tyhjentäminen" tarkoittaa "kiilaamista (jotain) tai täyttämistä". Tämä on käytännössä sitä, mitä kehittäjä tekee milloin välilevyn kirjoittaminen – ne lisäävät lisäkoodeja, jotta BLOB voi liittyä alustaan, johon he ovat kanssa. Onneksi lukijoillemme, kehittäjä ohjesäännöt on jo kirjoittanut välilevyn umpeen umpeen Adreno-ohjainversioiden välillä, ja voit löytää käyttövalmiita flashable OpenGL- ja Vulkan-ajureita Adreno 500 ja Adreno 600 GPU-perhe foorumeillamme.

Haluatko tietää päivitetyn näytönohjaimen manuaalisen asennuksen eduista? Esperin Mishaal Rahman jakoi mielenkiintoisen vertailun GPU-suorituskyvystä Snapdragonin 3DMarkissa 845-tehoinen Google Pixel 3 XL, jossa on Android 12, vakioohjaimella verrattuna Snapdragon 8:n uudempaan ohjaimeen Gen 1:

Aika kiehtovaa, eikö? Mutta älä unohda kompromissia objektiivisuuden ja merkityksellisyyden välillä. Päivitetyn GPU-ohjaimen asennuksessa pääkäyttäjän oikeuksilla on etuja, mutta siinä on varmasti myös ansoja. Sitä ei ole tarkoitettu aloittelijoille, ja laitteen sotkeutuminen voi mitätöidä takuun. Tarvitset aluksi lukitsemattoman käynnistyslataimen, mikä ei välttämättä ole mahdollista kaikissa skenaarioissa.

Johtopäätös

Kun otetaan huomioon vaihtoehdot Android-grafiikkasuoritinohjainten muokkausskenelle menneisyydessä, Adreno Tools -kirjasto on fantastinen askel eteenpäin, etenkin sen juureton luonteensa vuoksi. Odotamme innolla, miten projekti kasvaa ja kypsyy tulevaisuudessa. Muista kokeilla sitä ja kerro meille mielipiteesi kommenteissa!


Lähde:Esper