Tecnologia ART: o que realmente é e quais as suas vantagens? [Atualizado]

br teaser n5
© nextpit

Junto com o Android 4.4 KitKat, lançado no final do ano passado, a Google resolveu embarcar a nova versão da máquina virtual do seu sistema operacional móvel, o ART (Android Runtime), que promete tornar a execução de apps muito mais eficiente. Com o lançamento oficial do Android L se aproximando, já foi anunciado que o ART sairá da sua fase de testes e substituirá efetivamente a máquina virtual Dalvik. Neste artigo, explico com detalhes o que é o ART, como ele irá funcionar e também as suas vantagens e eventuais desvantagens.

br teaser n5
CART e Dalvik! / © NextPit

O que é ART ou Android Runtime?

Para entendermos os benefícios do novo runtime ART, temos que recorrer a detalhes técnicos dos dois sistemas. Os aplicativos executados hoje no Android utilizam uma máquina virtual (MV) chamada Dalvik, criada por Dan Borstein desde a primeira versão do sistema. Basicamente, os programas são escritos em Java e então convertidos em código de máquina chamado bytecode - uma etapa intermediária entre o código-fonte e o código legível pelo hardware. Nesse estágio, o código não está associado a nenhum código de máquina específico e pode ser convertido para rodar em várias arquiteturas distintas (portabilidade). Finalmente, a MV Dalvik traduz o bytecode em um código legível pela máquina em questão, código que é de fato executado pelo processador principal. Essa tradução (compilação) ocorre durante a execução do aplicativo, que dá o nome à técnica utilizada para tal: JIT (Just In Time).

O ART, por sua vez, foi concebido para usar uma técnica de compilação chamada AOT (Ahead Of Time). Sua principal diferença em relação ao Dalvik é que ela ocorre antes da execução do aplicativo - e não durante, como o JIT - o que elimina esta etapa durante o tempo de execução. Com isso, espera-se um aumento de velocidade de execução de até 2 vezes em relação ao Dalvik, reduzindo-se a percepção de atraso.

A título de ilustração, segue um gráfico de benchmark de um simples algoritmo de ordenação de valores (quicksort) executado em um aparelho Android sob ART (vermelho), Dalvik (azul) e Java Native Interface (laranja), técnica que permite que um programa Java acesse aplicações e bibliotecas escritas em linguagem de menor nível, como C/C++/Assembly.

art vs dalvik
O tempo de execução pode ser reduzido em até 2 vezes com o ART / © XDA

Vantagens e desvantagens do ART (Android Runtime)

Os apps ficarão mais rápidos, mas também ocuparão mais memória

Essa é uma consequência da própria natureza da próxima máquina virtual do Android: se um aplicativo é mantido pronto para rodar, claro que ele ocupará mais espaço. Como o código do app é compilado quando você o instala, e depois é mantido na memória em vez de compilar sempre que abri-lo, isso significa que ele ocupará um espaço extra permanente. Isso pode causar problemas para os dispositivos com pouca memória, e a velocidade maior vem sempre com um preço. Ainda é cedo, contudo, para saber as consequências concretas desse fato para dispositivos de entrada, como os da série Android One ou o Moto E.

memu
Será que o ART será um problema para smartphones com pouca memória interna? / © ANDROIDPIT

O ART irá economiza a bateria

Outra consequência óbvia da maneira como o ART funciona: se todos os aplicativos em seu celular forem pré-compilados, o processador terá de trabalhar menos a cada vez que você abri-los, o que leva a um menor consumo de bateria. A desvantagem é que, sempre que iniciar o seu dispositivo pela primeira vez, levará um tempo bem maior, especialmente se ele tiver muito bloatware. O mesmo vale para quando você abrir pela primeira vez um novo app. Depois disso, contudo, tudo será mais rápido.

O ART é mais rápido do que você pensa

A versão atual do ART rodando no Android L é obviamente uma opção para desenvolvedores. Quando o Google anunciou a mudança definitiva para o ART na Google I/O, foi afirmado que a nova máquina virtual será duas vezes mais rápida do que o Dalvik, mostrando um teste de benchmark como prova:

aviao2
A velocidade do ART comparada à do Dalvik em vários testes de benchmark. / © Google / ANDROIDPIT

Mas o que você talvez não saiba é que o Google também disse que outros testes mostraram que o ART pode ser três vezes mais rápido do que o Dalvik. Ainda não sabemos quão rápida será a versão final da máquina, mas a estratégia do Google de anunciar uma velocidade e depois surpreender a todos com um ART ainda mais rápido parece plausível.

Você já vem usando o ART no KitKat? Quais são as suas impressões?

Ir para o comentário (129)
Felipe A. Gavazza de Souza

Felipe A. Gavazza de Souza
Editor freelancer

Apaixonado por tecnologia, busca contribuir para o mundo Android. É formado em Engenharia da Computação pela Unicamp, trabalha na área em Munique e pretende levar um pouco da expertise alemã para as terras brasileiras.

Ver todos os artigos
Gostou do artigo? Então compartilhe!
Artigos recomendados
Artigo seguinte
129 Comentários
Escreva um comentário:
Todas as mudanças foram salvas. Não há rascunhos salvos no seu aparelho.
Escreva um comentário:
Todas as mudanças foram salvas. Não há rascunhos salvos no seu aparelho.

  • Thays W. 1
    Thays W. 09/01/2017 Link para o comentário

    Tenho um Moto g ( 1° geração) 8GB de memória. Pelo menos 2semanas atrás quis ver como rodaria o Art do meu celular já que achava q já tinha o maior conhecimento sobre o Dalvik. Notei que a bateria deu uma recaída com relação a tempo de uso, antes eu tinha umas 3 páginas de apps e todos rodavam bem com o Dalvik, quando mudei para o Art, metade fui obrigada a desinstalar, e agora tenho 1 página e meia bem sofrida, para instalar um, tenho que desinstalar outro. Vejo melhoras na rapidez do desenvolvimento de alguns programas mas consumiu minha tampouca memória de 5GB para o usuário. Ass.: T.W


  • Victor Diesco 3
    Victor Diesco 31/03/2016 Link para o comentário

    Eu acho engraçado os fabricantes e desenvolvedores de aplicativos, cade vez que lança modelos novos de aparelhos a memoria interna vem maior, porem vem com mais espaço utilizado. E os aplicativos cada vez mais vem maiores, a nao ser jogos pago, que aí nem sai tanta atualizacao, ja os free to play sempre atualiza e cresce o espaço utilizado. App como whatsapp antes nao passava de 80mb , agora no meu aqui ja ocupa 130mb, nem falo do facebook que muita gente utiliza.


    • Deyvison Amorim 3
      Deyvison Amorim 09/04/2016 Link para o comentário

      é so você apagar as mensagens e midias, o tamanho do whatss ou facebook sempre é o mesmo, o que aumenta a memoria utilizada são os dados que o usuario baixa, tente limpar os dados dos seus app e você verá a diferença


  • 5
    Ítalo Santos 23/02/2016 Link para o comentário

    Então, qual a tecnologia que a Apple usa? Já que os apps deles ocupam bem menos espaço a instalação é rápida e a execução também... Qual seria?


    • Deyvison Amorim 3
      Deyvison Amorim 09/04/2016 Link para o comentário

      maquina virtual nativa, coisa que no android é dificil fazer pelo fato que varias gadgets usam diferentes hardwares e tamanhos de tela


  • Edivaldo 16
    Edivaldo 13/10/2015 Link para o comentário

    Legal


  • 1
    Júlio Silva 17/03/2015 Link para o comentário

    Creio que a resposta para que o ART melhore a fluidez, poupança de bateria e RAM seja bem óbvia... Hard Reset no bicho e antes de qualquer atualização ou instalação, fazer a alteração de Dalvik para ART, pois assim os apps já serão instalados com a nova instrucao!


  • 18
    André Borba 17/01/2015 Link para o comentário

    eu troquei nas opções do desenvolvedor para art meu note 4 ficou virado num caralho tudo bugado e lento pra kcete


  • 1
    uanderson silva 12/12/2014 Link para o comentário

    Ae pessoal...
    alguém pode me tirar de um desespero aqui?
    então, tive a curiosidade de conhecer como funcionaria me g3 com essa tecnologia ART, mas estou tendo um problema na otimização, o aparelho não finaliza a operação, e quando o reinicio ele volta do ponto onde parou...
    por favor me salvem...


  • 3
    Bruno Tadeu 05/12/2014 Link para o comentário

    Alguem pode me falar como faço isso no Xperia Z1 ??


  • 2
    Ramires 11/11/2014 Link para o comentário

    Boa tarde

    Passei para ART. já faz algum tempo. Estou bastante satisfeito
    Não perdi nada e os benefícios são ótimos.


  • 2
    Ramires 11/11/2014 Link para o comentário

    Boa tarde.
    Já estou usando o ART, a muito tempo e realmente ficou mais rápido. Quando passei de DALVIK para ART, não perdi nada. Fiz na raça r na coragem e deu tudo certo. MOTO X.


  • André Filipe da C. 18
    André Filipe da C. 08/11/2014 Link para o comentário

    Afinal... Aumenta o consumo de bateria ou não no Nexus 5?


  • 2
    Edu Fernandes 02/11/2014 Link para o comentário

    Flávio meu também ficou mais lento no ART, consumindo muita RAM quanta a bateria uma pequena melhora!!!! Voltei pro dalvik o aparelho parece outro! Na minha opinião usar o dalvik no moto g 2 o sistema fica mais fluido!!!!


  • 5
    Flávio Schmidt 01/11/2014 Link para o comentário

    No meu Moto G 2014 o ART aumenta relativamente a execução dos apps mas deixa eles muito lentos e deixa o telefone bem lento também não sei porque isso mas cheguei ate a reiniciar ele algumas vezes mas não adiantou, alguem sabe o porque ou se eh normal mesmo por estar na fase de desenvolvimento ?

    Edu Fernandes


    • 9
      Bruno Alexandre 05/05/2017 Link para o comentário

      Moto E a mesma coisa... testei aqui o ART esquece... fica MUITO lento


  • 3
    Fernanda Maria 23/10/2014 Link para o comentário

    Se der problema eu posso voltar pro dalvik que para? gente pelo amor, agora já iniciei socorroooooo


    • 20
      Conta desativada 23/10/2014 Link para o comentário

      Pode voltar sim. Só ir no mesmo lugar e selecionar o Dalvik. Eu fiz isso. ;)


  • 20
    Conta desativada 16/10/2014 Link para o comentário

    No meu Moto G mudei pro ART e a memória usada aumentou de 3.2 GB pra 3.7 GB e os ganhos me pareceram poucos pra compensar tamanho gasto de memória, mas como ainda está com apenas 12 horas pode ser que as compensações se tornem visíveis.


  • 1
    Rodrigo da silva 07/10/2014 Link para o comentário

    Bom logo apos ler este post achei interessante tenho um moto x com android 4.4.4 e fiz o teste aparentemente nao vi nenhuma diferença ''gritante'' os apps ficaram um pouco mais rapido so um pouco porem os apps facebook Skype e youtube ainda continuam com leg para abrir nao sei porque se alguem solber resolver me ajudaria muito, nao alterou em ''nada'' mudar de dalvik para o ART e sobre a bateria a duração ja é boa pelo menos no meu moto x por isso voltei pro Dalvik e como fui na fominhagem não reparei a respeito de quanto de espaço este processo altera mas deve ser igual o que os outros camaradas falaram ai, agora vamos ver quando sair este Android L (não vejo a hora de sair :D) se o ART ja vai estar com todas estas qualidades com resultados bastante consideraveis INDEPENDENTE do modelo do aparelho que esteja com android!

Mostrar todos os comentários
Escreva um comentário:
Todas as mudanças foram salvas. Não há rascunhos salvos no seu aparelho.