Google podobno opracowało zupełnie nową sztuczkę, która pozwoli dokonać optymalizacji jądra Androida. Powinno się to skutecznie przełożyć na prędkość działania systemu, co uraduje wielu posiadaczy smartfonów i tabletów opartych na rzeczonym OS. Mowa tu o AutoFDO wspomnianego rdzenia, a dokładniej – Automatic Feedback-Directed Optimization (pol. automatyczna optymalizacja oparta na informacji zwrotnej), o której wspomniano we wpisie opublikowanym na łamach Android Developers Blog.
Google pracuje nad tym, aby smartfony i tablety z Androidem stały się szybsze
Nad omawianym rozwiązaniem pracuje zespół zajmujący się łańcuchem narzędzi Android LLVM. Jak napisano, jednym z priorytetów tej grupy jest poprawa wydajności rzeczonego systemu za sprawą technik optymalizacji w ekosystemie LLVM, a inżynierowie nieustannie poszukują nowych sposobów na osiągnięcie tego celu i zadowolenie użytkowników. Warto jednak zacząć od wytłumaczenia, czym w ogóle jest AutoFDO, mające odciążyć jądro Androida.
Zadaniem tej technologii jest instruowanie kompilatora oprogramowania, opierając się przy tym na rzeczywistych wzorcach. Te zaś przedstawiają najczęstsze ścieżki wykonywania instrukcji, które to kod przyjmuje podczas standardowego użytkowania i które to są rejestrowane poprzez zapis historii rozgałęzień procesora. Reszta tego procesu została przedstawiona w następujący sposób:
Dane te można zebrać z urządzeń, ale w przypadku jądra syntetyzujemy je w środowisku laboratoryjnym, wykorzystując reprezentatywne obciążenia, takie jak uruchomienie 100 najpopularniejszych aplikacji. Do przechwytywania tych danych używamy profilera próbkowania, identyfikującego, które części kodu są „gorące” (często używane), a które „zimne”. Kiedy przebudowujemy jądro przy użyciu tych profili, kompilator może podejmować znacznie mądrzejsze decyzje dotyczące optymalizacji, dostosowane do rzeczywistych obciążeń systemu Android.
Programiści zaznaczyli, że aktualnie za ok. 40% czasu procesora odpowiada właśnie jądro Androida, a ich wstępna praca pozwala zauważalnie zmniejszyć ten współczynnik, z potencjałem na wprowadzenie dalszych, bardziej odczuwalnych zmian. Aktualnie AutoFDO wykorzystane do optymalizacji natywnych plików wykonywalnych oraz bibliotek w przestrzeni użytkownika umożliwiło wyciśnięcie poprawy rzędu 4% w uruchamianiu niektórych aplikacji, a także redukcję czasu wymaganego do rozruchu systemu o 1%.
Chociaż wartości te nie robią jeszcze przesadnie dużego wrażenia, należy mieć na uwadze, iż to dopiero początek. Inżynierowie przekonują, że „zaobserwowali imponującą poprawę w kluczowych wskaźnikach Androida”, a w najbliższej przyszłości podobne poprawki optymalizacji mają dotknąć nie tylko większej części rdzenia OS, ale także komponentów systemowych oraz sterowników.
Z dostępnych informacji wynika, że wdrożenie AutoFDO rozpoczęło się od gałęzi android16-6.12 i android15-6.6. Tekst zakończono stwierdzeniem, iż wprowadzenie Automatic Feedback-Directed Optimization do jądra Androida gwarantuje, iż już sam fundament systemu będzie zoptymalizowany pod kątem sposobu, w jaki użytkownicy korzystają ze swoich urządzeń na co dzień.
0 komentarzy