O AndroidPIT utiliza cookies para garantir que você tenha a melhor experiência no nosso site. OK
4 min para ler 289 Compartilhado 129 Comentários

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

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! / © AndroidPIT

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?

289 Compartilhado

Os comentários favoritos dos leitores

  • Camila Rinaldi
    • Admin
    • Equipe
    22/jan/2014

    Excelente matéria, Felipe! A tecnologia ART, como bem disse, ainda está em fase de testes, alguns ainda falam sobre ocupar mais memória, mas isso é tão pequeno em comparação ao Dalvik e, além disso, a velocidade de lançamento e abertura de apps é muito mais importante que alguns Mb a mais na ROM.

  • Thiago Henrique 22/jan/2014

    Estou usando ART há mais ou menos 2 meses e minha única reclamação é q o aplicativo Nike+Running parou de funcionar, mas os benefícios superam isso:

    Tenho um nexus 5
    - Melhor rendimento da bateria
    - Maior memoria livre
    - Melhor performance do processador
    - O aparelho nao esquenta como antes
    - Nesses dois meses nao desliguei o aparelho e mesmo assim nunca se quer ficou lento

129 Comentários

Escreva um 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

  • 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.

    • é 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

  • 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?

  • Legal

  • 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!

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

  • 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...

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

  • Boa tarde

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

  • 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.

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

  • 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!!!!

  • 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 ?

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

  •   20

    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.

  • 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

O AndroidPIT utiliza cookies para garantir que você tenha a melhor experiência no nosso site. Mais informações

Entendi