Google kehittää Androidiin uusia taustalla toimivia optimointeja, joiden tavoitteena on tehdä puhelimista nopeampia ja samalla parantaa akkukestoa.
Google on kertonut ottavansa käyttöön Androidin ytimessä uuden AutoFDO-optimointimenetelmän.
AutoFDO (Automatic Feedback-Directed Optimization) on tekniikka, joka auttaa kääntäjää optimoimaan ohjelmakoodia sen perusteella, miten järjestelmää oikeasti käytetään.
Androidin LLVM:n kehittäjien mukaan puhelin tekee jatkuvasti taustalla tuhansia pieniä päätöksiä esimerkiksi siitä, miten eri koodiosia suoritetaan. Nämä päätökset voivat yhdessä kuluttaa huomattavan osan suorittimen resursseista. Perinteisesti kääntäjä tekee optimointipäätöksiä staattisten vihjeiden perusteella. AutoFDO muuttaa tätä lähestymistapaa hyödyntämällä todelliseen käyttöön perustuvia tietoja. Näin kääntäjä pystyy optimoimaan erityisesti niitä koodin osia, joita käytetään kaikkein eniten.
Google kerää optimointia varten tietoa siitä, miten koodi käytännössä suoritetaan. Androidin ytimen kohdalla tämä data tuotetaan laboratorioympäristössä ajamalla esimerkiksi sataa suosituinta sovellusta testiympäristössä. Profilointityökalu tunnistaa tällöin suositut koodiosat, joita käytetään usein, sekä harvemmin käytetyt osat. Näiden tietojen avulla kääntäjä pystyy tekemään tarkempia optimointipäätöksiä.
Googlen mukaan ensimmäiset testitulokset uudesta optimoinnista ovat lupaavia. Laitteen käynnistysaika nopeutui keskimäärin 2,1 prosenttia ja sovellusten kylmäkäynnistys, eli käynnistys tyhjästä ilman taustalla oloa, nopeutui 4,3 prosenttia. Lisäksi parannuksia havaittiin useilta muilta osin, jotka eivät välttämättä näy yhtä selvästi loppukäyttäjälle.
Googlen mukaan AutoFDO toimii Androidissa oletuksena varovaisella strategialla. Jos jokin prosessi poikkeaa ohjatuista suoritusmalleista, järjestelmä turvautuu perinteisiin optimointimenetelmiin.
Uudet optimoinnit ovat tulossa Androidin uusimpiin ydinversioihin, mukaan lukien android16-6.12 ja android15-6.6 sekä myöhemmin julkaistava android17-6.18. Googlen mukaan muutosten pitäisi näkyä käyttäjille muun muassa sujuvampana käyttöliittymänä, nopeampana sovellusten välillä vaihtamisena sekä pidempänä akkukestona.