Nieoficjalnie mówi się, że Android 2.2 będzie wspierał JIT. Co więcej, z harmonogramu Google I/O można dowiedzieć się, że zostanie zaprezentowany kompilator Dalvik JIT, czyli prawdopodobieństwo, że technologia pojawi się w kolejnej odsłonie systemu Google jest bardzo duże.

JIT to metoda wykonywania programów polegająca na kompilacji do kodu maszynowego w locie, czyli bezpośrednio przed wykonaniem danego fragmentu kodu.
Cała procedura wygląda następująco:

  • kod źródłowy jest kompilowany do kodu pośredniego (bajtowego),
  • program jest rozpowszechniany w postaci kodu pośredniego,
  • na maszynie, na której program zostaje uruchomiony, maszyna wirtualna przeprowadza kompilację kodu pośredniego do kodu maszynowego.

Kompilacja może się odbywać w momencie pierwszego dostępu do kodu znajdującego się w pliku lub pierwszego wywołania funkcji.

Wikipedia

Ogólnie można powiedzieć, że JIT przyśpiesza działanie aplikacji na telefonie.

Standardowo G1 z Android 1.6 wyciąga 1.8 MFLOPS. Po zainstalowaniu ROMa ze wsparciem JIT (HTCClay) urządzenie osiąga 3.5 MFLOPS a po podkręceniu do 710mhz aż 4.5 MFLOPS. Takie dane podaje Phandroid.

Ian Douglas, programista z Armor Games, pisze Nexus One z Android 2.2 z JIT osiąga 38-40 MFLOPS, podczas gdy standardowa wydajność Nexusa to 6-7 MFLOPS. Test został wykonany przy pomocy aplikacji Linpack.

Skok jest nieprawdopodobny, tylko jak to będzie wyglądać w praktyce?

2010-05-11-122212Nexus One – test Linpack

Comments are closed.