Vďaka nástrojom Adreno Tools môžete teraz aktualizovať grafický ovládač na svojom zariadení so systémom Android bez prístupu root. Čítajte ďalej a dozviete sa viac!
Webové stránky orientované na smartfóny sa zvyčajne zameriavajú iba na najnovšie zariadenia, no veľká časť používateľov sa rozhodla svoje telefóny z jedného alebo druhého dôvodu neaktualizovať. Ak nedôjde k zlyhaniu hardvéru, mnohé z týchto zariadení môžu mať pred sebou ešte roky používania, pretože pre ich majiteľov stále fungujú dobre. Zatiaľ čo vlastné ROM dokáže udržať staré smartfóny nažive celé veky, pre modderov môže byť nočnou morou udržiavať veci ako fotoaparát a grafické ovládače aktuálne bez oficiálnej podpory výrobcu.
Aktualizácia ovládačov GPU v systéme Android
Na rozdiel od ekosystému smartfónov, aktualizácia ovládača grafiky v počítači je niečo, na čo môžete vždy myslieť. Je to možné vďaka modulárnej architektúre hardvérových ovládačov PC, čo umožňuje náročným používateľom pohrať sa s balíkmi ovládačov s uzavretým zdrojovým kódom alebo sa dokonca rozhodnúť pre ovládače s otvoreným zdrojom namiesto ovládačov od OEM dvojhviezdy. V prípade Androidu však aktualizácie ovládačov vo všeobecnosti prichádzajú do vášho telefónu iba spolu s väčšími aktualizáciami operačného systému.
Aktualizovateľné ovládače GPU sa môžu hodiť na opravu chýb, zlepšenie grafického výkonu alebo pridanie nových funkcií z API OpenGL alebo Vulkan. v dnešnej dobe smartphony sú väčšie a rýchlejšie ako kedykoľvek predtým, vďaka čomu sú dokonalým prostriedkom na hranie hier, a preto prenos dizajnu ovládača v štýle PC zmysel.
V skutočnosti to Google v snahe modularizovať Android cez Project Treble skutočne umožnil zabaliť sadu grafických ovládačov pre konkrétnu platformu ako aplikáciu a aktualizovať ju cez Play Obchod. Odvtedy niekoľko bežných výrobcov OEM systému Android spolupracovalo so spoločnosťou Google a hlavnými dodávateľmi GPU, vrátane ARM a Qualcomm, aby distribuovať aktualizácie pre ovládače GPU svojich telefónov nezávislé od väčších verzií softvéru.
Znižuje dizajn aktualizovateľného grafického ovládača fragmentáciu?
Áno, do istej miery. Napriek tomu zostáva niekoľko znepokojujúcich otázok stále nezodpovedaných. Po prvé, mechanizmus spoločnosti Google neposkytuje jednoduchý spôsob, ako nahradiť ovládač dodávateľa uzavretého zdroja ponukou tretej strany s otvoreným zdrojom. Balík ovládača môžete samozrejme manuálne nahradiť v oddiele dodávateľa cieľového zariadenia, ak ho máte root prístup a nejako dostať do rúk potrebné súbory, ale to nie je pre mnohých ideálne riešenie.
Ďalej prichádza paradox stability verzus zlepšenie. Android si zachováva hierarchické usporiadanie, pokiaľ ide o načítanie grafického ovládača. Aj keď je možné prepínať medzi zostavou nainštalovanou vo výrobe a novším aktualizovaným vydaním pomocou Možnosti vývojára => Predvoľby ovládača grafiky na základe jednotlivých aplikácií sa to v konečnom dôsledku scvrkáva na rozhodnutie výrobcu OEM, kedy presadiť aktualizáciu grafického ovládača. Výsledkom je, že koncový používateľ nemôže využívať špičkové zostavy ovládačov priamo od výrobcu SoC, pretože OEM sú stále zodpovední za zavádzanie aktualizácií.
Ako už bolo spomenuté, aktualizácia ovládačov GPU je možná s prístupom root, ale nič neprekoná metódu bez root. Ďakujeme Senior Member XDA stanov, teraz máme geniálne riešenie pomenované Nástroje Adreno ktorý umožňuje priebežné úpravy alebo výmeny ovládačov GPU v systéme Android – aj to bez root! Zásadnú úlohu v tomto počine určite zohralo aj vývojárske zázemie s portovaním Androidu na Nintendo Switch, keďže celý projekt má svoj pôvod v r. Skyline, open source, rozpracovaný emulátor Nintendo Switch pre Android.
Kolega vývojár Skyline Označiť "Pixelylon" navrhol myšlienku výmeny runtime disku stanov, ktorý sa nakoniec zhmotnil do Adreno Tools. Keďže ide o knižnicu bez koreňového adresára, Adreno Tools môže pomôcť akejkoľvek bežnej aplikácii načítať vlastné ovládače GPU, vysporiadať sa s textúrami BCn a presmerovať operácie so súbormi pre ďalšie komplexné úpravy na GPU rodiny Adreno od Qualcommu. Robí to tak, že sa pripojí k systémovým knižniciam a bez problémov sa zamieňajú za nové vodič. Je pozoruhodné, že zatiaľ neexistuje podpora pre GPU Mali.
Keďže neexistuje žiadne obmedzenie na pôvod ovládača, nadšenci môžu načítať ovládače tretích strán aj prostredníctvom Adreno Tools. To je užitočné najmä pre tých, ktorí chcú vyskúšať Turnip – open source ovládač Vulkan pre grafický hardvér Qualcomm Adreno, ktorý spadá pod Freedreno dáždnik. Napríklad, AetherSX2, emulátor PlayStation 2 pre Android už využíva nástroje Adreno Tools, ktoré poskytujú koncovým používateľom možnosť rozhodnúť sa pre repku namiesto ovládača OEM pre lepší výkon.
Adreno Tools na GitHub
Aký mám z toho úžitok?
Majte na pamäti, že projekt Adreno Tools sa dodáva ako softvérová knižnica. Znamená to, že nemôžete nájsť predkompilovaný súbor APK, ktorý by magicky umožňoval používať externý zásobník ovládačov grafiky v celom systéme. Namiesto toho musí vývojár začleniť knižnicu do svojho projektu, aby ich aplikácia mohla ponúkať možnosť načítania aktualizovaných súborov ovládača grafiky alebo alternatíva tretej strany bez root prístup. Presne takto využívajú vývojári Skyline a AetherSX2 Adreno Tools práve teraz.
Z pohľadu koncového používateľa Adreno Tools samotné nedokážu vyriešiť všetky obmedzenia implementácie ovládača GPU pre Android. Je to len nástroj pre komunitu vývojárov na obídenie niektorých z najväčších prekážok aktualizácií grafických ovládačov na zariadeniach so systémom Android – to je všetko. Jeho výhody môžete získať iba prostredníctvom aplikácie, ale manuálna aktualizácia ovládača pre celý systém stále vyžaduje prístup root.
Čo môžem urobiť, ak mám root?
Ak ste skúsený používateľ s odomknutým zariadením, môžete na svojom zariadení vykonať celosystémovú vynútenú inštaláciu aktualizovaného zostavenia grafického ovládača. Ak to chcete urobiť, musíte z aktualizovaného balíka firmvéru extrahovať súbory BLOB ovládača (Binary Large OBject), ktoré obsahujú predbalené softvérové binárne súbory na interakciu s GPU. Firmvér môžete použiť z iného zariadenia, ale ovládač musí zodpovedať rovnakej rodine GPU cieľového zariadenia.
Po extrahovaní požadovaných súborov ich môžete zabaliť ako modul Magisk a nainštalovať ho do cieľového smartfónu, aby ste nahradili existujúce ovládače dodávateľa bezsystémovým spôsobom. Samozrejme, proces je o niečo komplikovanejší, ako sa zdá. Možno sa budete musieť postarať o nekompatibilitu rozhrania medzi starými a aktualizovanými ovládačmi, pre ktoré by bolo potrebné podloženie.
„Prehadzovať“ znamená „zaklinovať (niečo) alebo vyplniť priestor“. To je efektívne to, čo vývojár robí, keď písanie shim – pridávajú ďalšie kódy, ktoré umožňujú BLOB prepojenie s platformou, na ktorej sú pracujúci s. Našťastie pre našich čitateľov, vývojárov stanov už napísal shim na preklenutie priepasti medzi rôznymi revíziami ovládačov Adreno a môžete nájsť flashovateľné ovládače OpenGL a Vulkan pripravené na použitie pre Adreno 500 a Adreno 600 rodina GPU na našich fórach.
Chcete vedieť o výhodách manuálnej inštalácie aktualizovaného grafického ovládača? Mishaal Rahman z Espera sa podelil o zaujímavé porovnanie výkonu GPU v 3DMark zo Snapdragonu Google Pixel 3 XL s výkonom 845 so systémom Android 12 so sériovým ovládačom v porovnaní s novším ovládačom zo Snapdragon 8 Gen 1:
Celkom fascinujúce, nie? Nezabúdajte však na kompromis medzi objektívnosťou a relevantnosťou. Inštalácia aktualizovaného ovládača GPU s prístupom root má svoje výhody, ale určite má aj svoje úskalia. Nie je to určené pre začiatočníkov, navyše manipulácia so zariadením môže viesť k strate záruky. Na začiatok potrebujete odomknutý bootloader, čo nemusí byť možné vo všetkých scenároch.
Záver
Vzhľadom na alternatívy pre scénu modifikácie ovládačov GPU pre Android v minulosti je knižnica Adreno Tools fantastickým krokom vpred, najmä pre svoju bezkorenovú povahu. Tešíme sa na to, ako sa projekt v budúcnosti rozrastie a dospeje. Určite to vyskúšajte a dajte nám vedieť, čo si myslíte v komentároch!
Zdroj:Esper