JIT, trzy literki, które zmienią świat Androida

Dźwiedziu Android 2010-03-01

JIT

 Nie przyzwyczajajcie się do tej ilości Mflopsów. Warunki labolatoryjne.

Chłopaki na forum Android byli co prawda szybsi ode mnie, ale do mnie należy dalsze rozgłoszenie światu (a przynajmniej tej części co ma naszego feed’a).

Szybka teoria

JIT – Just In Time compilation jest innym podejściem do wykonywania programów używających bytecode. JIT kompiluje część lub całość bytecode do natywnego kodu maszynowego, w przeciwieństwie do interpretacji bytecodu przez maszynę wirtualną. Oznacza to przyrost wydajności w wykonywaniu kodu, ale za cenę obniżenia jej przy pierwszych kompilacjach bytecodu danego programu. Mechanizm ten…

…dobra, dobra, co to ma wspólnego z Androidem?

Eksperymentalny kod JIT jest dołączony już do AOSP 2.x, licknuts z forum XDA dostarczył biblioteki do dołączenia do modyfikowanych ROM’ów z gałęzi 1.6. Kolejne prace…

…ok, ok, przyjąłem, co to oznacza dla mnie?

Dla zwykłego użytkownika może oznaczać to poprawę wydajności rzędu od 150% (gałąź 1.6) do 300% (Nexus One). Jednakże dzieje się tak za cenę pogorszenia wydajności przy pierwszych uruchomieniach aplikacji czy też samego urządzenia. Jest to jedna z głównych bolączek deweloperów Androida, a dokładniej jak dostroić i zrównoważyć spowolnienie pierwszych uruchomień, a optymalizację docelową. Niestety, o ile power-user przyjmie takie spowolnienie ze stoickim spokojem, mając na względzie docelowy efekt, to zwykły użytkownik zacznie wylewać na prawo i lewo swoje żale, że Android działa wolniej od iPhone. Gdyby nie to oraz aktualna niestabilność na aktualny poziomie prac to już ostrzylibyśmy sobie zęby na kolejny update.

…ech… toś mnie zawiódł…

Trochę musiałem. Nie jest to póki co rozwiązanie produkcyjne, ale już ochrzczone najlepszą modyfikacją/hackiem na G1 (autor tej teorii posiada tylko G1).

Jeśli masz na tyle odwagi i flashujesz swój telefon co rano dla sportu, to włączenie lub instalacja JIT jest dobrym pomysłem (choć podejrzewam, że miałeś JIT zainstalowany zanim napisałem ten artykuł). Jeśli na co dzień korzystasz z modyfikowanych ROMów to również warto rozważyć adopcję tego rozwiązania. Choć zalecam daleko posuniętą ostrożność ze względu na niestabilność. Pozostałym użytkownikom zalecam wstrzymanie się dopóki to rozwiązanie nie zostanie zaimplementowane przynajmniej w autorskich ROMach.

Mówiłeś też coś o zmienianiu świata Androida.

Widocznie masz jakiś powolny dzień dziś. Więc powtórzę: 150%-300% zwiększona wydajność, w zależności od sprzętu. Niektórzy użytkownicy z forum XDA raportują nawet zwiększenie przepustowości połączeń 3G (teoretycznie jest to możliwe, jeśli umożliwi się aplikacji większą obróbkę przesyłanych danych, lecz na wszelki wypadek zapraszam do dyskusji w komentarzach i/lub na forum).

Trzeba jednak przyznać, że to rozwiązanie odstawi na półeczkę wszystkich malkontentów wydajności Androida. Musi tylko przejść choroby wieku dziecięcego.



x