quinta-feira, 11 de agosto de 2016

Android Nougat - Tecnologia JIT.




 O Android Nougat irá vir com uma nova tecnologia que promete economizar mais energia e fazer com que o Android ganhe um desempenho até 600% melhor, a Google já incluiu uma nova tecnologia para melhorar o desempenho do sistema, o ART.

Dalvik e ART


Primeiro, vamos entender qual é a diferença entre o ART e o antigo Dalvik.

O antigo Dalvik, carregava o aplicativo, e quando alguma parte precisava ser otimizada, ele parava o aplicativo e otimizava esta parte, fazendo com que o aplicativo travasse algumas vezes, com a vinda do ART, os aplicativos começaram a ser baixados ainda como aplicativos com código dex, mas, compilados para código nativo durante a instalação (por isso alguns apps demoram para instalar, principalmente os maiores).

O JIT

O que é a tecnologia JIT? Como ela funciona? Ela realmente melhora o desempenho?

Nas máquinas virtuais, o JIT é altamente importante, pois ele analisa as partes que necessitam ser otimizadas, e as otimiza. A antiga Dalvik VM fazia isto, mas não era muito eficiente.

O JIT é um compilador que transforma partes que estão escritas em uma linguagem intermediaria (o dex neste caso) em código nativo, porém, a função dele não é somente transformar estas partes, ele também as apaga quando vê que não precisa mais delas, e pode até descartar um código e tentar compilar novamente usando outra estratégia ou com base em novos dados, fazendo com que o aplicativo esteja em otimização constante.

O JIT melhora muito o desempenho dos aplicativos pelo fato dele poder transformar as partes do código com base na forma em que o usuário utiliza o aplicativo.

O ART somente compila o código antes de executar o aplicativo, enquanto o JIT pode otimizar enquanto o usuário utiliza o aplicativo, permitindo assim que o JIT faça o aplicativo ter mais performance com base na forma em que o usuário utiliza o mesmo.

Mas se o ART compila diretamente para código nativo, não deveríamos ter melhor desempenho? Não necessariamente, pois nem sempre o código nativo será melhor que o código dex, já que as VMs tem melhores tecnologias, e algumas coisas precisam de um trabalho extra para serem transformadas em código nativo, além do fato de que um compilador AOT precisa de um desenvolvimento longo para chegar a uma fase na qual o código nativo gerado consiga ser tão rápido quanto um aplicativo compilado diretamente para código nativo.


Quais melhorias teremos?


Pelo fato do JIT compilar para código nativo sempre que for necessário, teremos um menor consumo de bateria, já que não será necessário interpretar todo o código dex; as instalações serão bem mais rápidas; e esqueça as telas de otimização de aplicativos.




Manterei vocês informados no caso de alguma novidade em relação ao JIT no Android.


Tags: ,

0 Comentarios para “Android Nougat - Tecnologia JIT.”

Postar um comentário

© SouUmByte. Todos direitos reservados.
Designed by SpicyTricks