AndroProf : a profiling tool for the Android platform
Autor(a) principal: | |
---|---|
Data de Publicação: | 2013 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/86164 |
Resumo: | Este trabalho tem como objetivo o desenvolvimento de uma ferramenta de profiling para a plataforma móvel Android. As ferramentas atuais de tracing e profiling não acompanharam o crescimento do mercado móvel, fazendo com que a tarefa de obter dados sobre a execução de aplicativos se torne muito mais difícil. As poucas ferramentas que estão à disposição têm grandes limitações com relação a quais informações elas conseguem obter e também quanto a quantidade de informação que pode ser coletada. Além das poucas opções de ferramentas, o desenvolvimento de aplicações para sistemas embarcados já é, naturalmente, mais complexo devido às limitações do sistema, como, por exemplo, desempenho reduzido e alimentação por bateria. Portanto, o desenvolvimento de uma ferramenta que obtenha informações como: dissipação de potência, tempo de execução e outras estatísticas é extremamente necessária no desenvolvimento de aplicações para sistemas embarcados. Este trabalho apresenta uma ferramenta multiplataforma que suporta a emulação de arquiteturas ARM e MIPS executando Android, além de suportar parcialmente a arquitetura x86. Ela obtém as informações citadas anteriormente por aplicação e ainda é capaz de obter dados de aplicações que executam tanto código nativo, quanto aplicações que executam na máquina virtual Dalvik. Para alcançar este objetivo, nós estendemos o QEMU do Android SDK e desenvolvemos ferramentas com interfaces gráficas para processar os dados coletados. Além disso, nós avaliamos o impacto da nossa implementação em relação ao tempo de execução de diversos benchmarks e nós fizemos um estudo de caso comparando diferentes arquiteturas, aplicações escritas puramente em Java e aplicações com partes em código nativo, bem como o impacto do JIT compiler na execução. Todos estas comparações através do uso da ferramenta desenvolvida. |
id |
UFRGS-2_a3906ff23bca3f2ba3c611c0c1cdbfad |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/86164 |
network_acronym_str |
UFRGS-2 |
network_name_str |
Repositório Institucional da UFRGS |
repository_id_str |
|
spelling |
Sartor, Anderson LuizBeck Filho, Antonio Carlos SchneiderCorrêa, Ulisses Brisolara2014-01-18T01:53:58Z2013http://hdl.handle.net/10183/86164000910207Este trabalho tem como objetivo o desenvolvimento de uma ferramenta de profiling para a plataforma móvel Android. As ferramentas atuais de tracing e profiling não acompanharam o crescimento do mercado móvel, fazendo com que a tarefa de obter dados sobre a execução de aplicativos se torne muito mais difícil. As poucas ferramentas que estão à disposição têm grandes limitações com relação a quais informações elas conseguem obter e também quanto a quantidade de informação que pode ser coletada. Além das poucas opções de ferramentas, o desenvolvimento de aplicações para sistemas embarcados já é, naturalmente, mais complexo devido às limitações do sistema, como, por exemplo, desempenho reduzido e alimentação por bateria. Portanto, o desenvolvimento de uma ferramenta que obtenha informações como: dissipação de potência, tempo de execução e outras estatísticas é extremamente necessária no desenvolvimento de aplicações para sistemas embarcados. Este trabalho apresenta uma ferramenta multiplataforma que suporta a emulação de arquiteturas ARM e MIPS executando Android, além de suportar parcialmente a arquitetura x86. Ela obtém as informações citadas anteriormente por aplicação e ainda é capaz de obter dados de aplicações que executam tanto código nativo, quanto aplicações que executam na máquina virtual Dalvik. Para alcançar este objetivo, nós estendemos o QEMU do Android SDK e desenvolvemos ferramentas com interfaces gráficas para processar os dados coletados. Além disso, nós avaliamos o impacto da nossa implementação em relação ao tempo de execução de diversos benchmarks e nós fizemos um estudo de caso comparando diferentes arquiteturas, aplicações escritas puramente em Java e aplicações com partes em código nativo, bem como o impacto do JIT compiler na execução. Todos estas comparações através do uso da ferramenta desenvolvida.This work aims to develop a profiling tool for the Android platform. Current tools for mobile development are very limited in which and how much information they can trace or profile. They are also scarce when compared to general-purpose development tools. This makes the development of embedded applications even a harder task to be accomplished, due to its hard constraints, such as limited performance and power budget. Therefore, a tool that provides information such as power dissipation, execution time and other statistics is mandatory when it comes to develop embedded applications. This work presents a multiplatform tool that fully supports ARM and MIPS architectures, and partially supports x86 architecture executing Android. It provides the aforementioned information per application and it is also able to trace all applications native code, including that generated by Dalvik Virtual Machine. To accomplish this, we extended Android SDK’s QEMU, and we developed graphical user interfaces to process the traced data. In addition, we evaluated the impact of this implementation in relation to the execution time of several benchmarks and we present a case study comparing different architectures, applications written purely in Java and applications that use native code and the impact of the JIT compiler in the execution. All these comparisons through the usage of the developed tool.application/pdfengAndroidComputação móvelAndroid applicationsAndroid emulatorQEMUprofiling toolJNIAndroProf : a profiling tool for the Android platforminfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPorto Alegre, BR-RS2013Ciência da Computação: Ênfase em Engenharia da Computação: Bachareladograduaçãoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSORIGINAL000910207.pdf000910207.pdfTexto completo (inglês)application/pdf2117452http://www.lume.ufrgs.br/bitstream/10183/86164/1/000910207.pdf00413ad12830ab7b1ee90c13bd22d5b0MD51TEXT000910207.pdf.txt000910207.pdf.txtExtracted Texttext/plain107567http://www.lume.ufrgs.br/bitstream/10183/86164/2/000910207.pdf.txt723eddc44bf275d3311b683e3b0ec170MD52THUMBNAIL000910207.pdf.jpg000910207.pdf.jpgGenerated Thumbnailimage/jpeg1083http://www.lume.ufrgs.br/bitstream/10183/86164/3/000910207.pdf.jpg08fcb86f0cb1f89a892d20713936ff21MD5310183/861642021-05-07 05:11:19.048493oai:www.lume.ufrgs.br:10183/86164Repositório de PublicaçõesPUBhttps://lume.ufrgs.br/oai/requestopendoar:2021-05-07T08:11:19Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
AndroProf : a profiling tool for the Android platform |
title |
AndroProf : a profiling tool for the Android platform |
spellingShingle |
AndroProf : a profiling tool for the Android platform Sartor, Anderson Luiz Android Computação móvel Android applications Android emulator QEMU profiling tool JNI |
title_short |
AndroProf : a profiling tool for the Android platform |
title_full |
AndroProf : a profiling tool for the Android platform |
title_fullStr |
AndroProf : a profiling tool for the Android platform |
title_full_unstemmed |
AndroProf : a profiling tool for the Android platform |
title_sort |
AndroProf : a profiling tool for the Android platform |
author |
Sartor, Anderson Luiz |
author_facet |
Sartor, Anderson Luiz |
author_role |
author |
dc.contributor.author.fl_str_mv |
Sartor, Anderson Luiz |
dc.contributor.advisor1.fl_str_mv |
Beck Filho, Antonio Carlos Schneider |
dc.contributor.advisor-co1.fl_str_mv |
Corrêa, Ulisses Brisolara |
contributor_str_mv |
Beck Filho, Antonio Carlos Schneider Corrêa, Ulisses Brisolara |
dc.subject.por.fl_str_mv |
Android Computação móvel |
topic |
Android Computação móvel Android applications Android emulator QEMU profiling tool JNI |
dc.subject.eng.fl_str_mv |
Android applications Android emulator QEMU profiling tool JNI |
description |
Este trabalho tem como objetivo o desenvolvimento de uma ferramenta de profiling para a plataforma móvel Android. As ferramentas atuais de tracing e profiling não acompanharam o crescimento do mercado móvel, fazendo com que a tarefa de obter dados sobre a execução de aplicativos se torne muito mais difícil. As poucas ferramentas que estão à disposição têm grandes limitações com relação a quais informações elas conseguem obter e também quanto a quantidade de informação que pode ser coletada. Além das poucas opções de ferramentas, o desenvolvimento de aplicações para sistemas embarcados já é, naturalmente, mais complexo devido às limitações do sistema, como, por exemplo, desempenho reduzido e alimentação por bateria. Portanto, o desenvolvimento de uma ferramenta que obtenha informações como: dissipação de potência, tempo de execução e outras estatísticas é extremamente necessária no desenvolvimento de aplicações para sistemas embarcados. Este trabalho apresenta uma ferramenta multiplataforma que suporta a emulação de arquiteturas ARM e MIPS executando Android, além de suportar parcialmente a arquitetura x86. Ela obtém as informações citadas anteriormente por aplicação e ainda é capaz de obter dados de aplicações que executam tanto código nativo, quanto aplicações que executam na máquina virtual Dalvik. Para alcançar este objetivo, nós estendemos o QEMU do Android SDK e desenvolvemos ferramentas com interfaces gráficas para processar os dados coletados. Além disso, nós avaliamos o impacto da nossa implementação em relação ao tempo de execução de diversos benchmarks e nós fizemos um estudo de caso comparando diferentes arquiteturas, aplicações escritas puramente em Java e aplicações com partes em código nativo, bem como o impacto do JIT compiler na execução. Todos estas comparações através do uso da ferramenta desenvolvida. |
publishDate |
2013 |
dc.date.issued.fl_str_mv |
2013 |
dc.date.accessioned.fl_str_mv |
2014-01-18T01:53:58Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/86164 |
dc.identifier.nrb.pt_BR.fl_str_mv |
000910207 |
url |
http://hdl.handle.net/10183/86164 |
identifier_str_mv |
000910207 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Repositório Institucional da UFRGS |
collection |
Repositório Institucional da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/86164/1/000910207.pdf http://www.lume.ufrgs.br/bitstream/10183/86164/2/000910207.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/86164/3/000910207.pdf.jpg |
bitstream.checksum.fl_str_mv |
00413ad12830ab7b1ee90c13bd22d5b0 723eddc44bf275d3311b683e3b0ec170 08fcb86f0cb1f89a892d20713936ff21 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
|
_version_ |
1801224458084548608 |