BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Android N combina AOT, interpretação e JIT

Android N combina AOT, interpretação e JIT

O Android N introduz uma runtime hibrida usando compilação + interpretação + JIT para obter a melhor combinação entre tempo de instalação, uso de memória, consumo de bateria e desempenho.

Uma das principais funcionalidades introduzidas como previsto no Android KitKat e como a solução padrão no Lollipop foi o ART, uma nova runtime no momento certo. O ART substituiu o Dalvik, mas o bytecode é compatível para continuar executando arquivos DEX. Uma das principais características do ART foi a compilação AOT de aplicações durante a instalação. O principal benefício foi otimizar o código nativo para ter o melhor desempenho e precisar de menos processamento para ser executado. O ponto negativo foi o tempo de instalação e espaço. Aplicações grandes precisam de alguns minutos para serem instaladas no Lollipop e Marshmallow.

O Android N Developer Preview inclui um runtime hibrido. Não haverá qualquer compilação durante a instalação, e os aplicativos podem ser iniciados de imediato com o bytecode sendo interpretado. Existe um novo interpretador mais rápido no ART que vem acompanhado por um novo JIT, mas a informação JIT não é persistida. Ao invés disso, o código é descrito durante a execução e os dados resultantes são salvos. Depois, quando o dispositivo está inativo e carregando, o ART realizará uma compilação baseada no perfil das partes mais utilizadas do código, deixando o resto intacto.

Dependendo do que o profile encontrar durante as subsequentes execuções, o processo de compilação pode ser aplicado várias vezes na mesma aplicação, para encontrar novos caminhos de código que se tornaram otimizados (quente) ou através da aplicação de novas otimizações para o código já compilado. Embora este procedimento ainda seja chamado de AOT por questões de simplicidade, pode-se ler isso como compilação All-Of-the-Time.

Os benefícios globais desta estratégia mista de AOT + Interpretação + JIT são:

  • O tempo de instalação mesmo para grandes aplicações é reduzido para segundos;
  • Atualizações de sistema são instaladas mais rapidamente pelo fato de não ser necessário uma etapa de otimização;
  • O uso da memória RAM da aplicação é menor, em alguns casos abaixo de 50%;
  • Desempenho aperfeiçoado;
  • Menor consumo de bateria.

Para encontrar mais detalhes sobre as otimizações aplicadas durante a compilação, recomendamos o podcast Episode 45: State of the ART, tendo como convidados Brian Carlstrom, líder da equipe do Android ART, e Anwar Ghuloum, diretor de engenharia da plataforma Android.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT