Dissertação

Parallelizing libraries for running in multicores EVALUATED

O grande número de bibliotecas disponíveis na plataforma Java contribui para a popularidade da JVM como alvo de muitas aplicações modernas. Ao usarem bibliotecas, os programadores estão não só a demorar menos tempo a programar como também a melhorar a qualidade das aplicações, contando com soluções bem testadas e altamente otimizadas. Assim, os programadores passam mais tempo a encontrar e combinar módulos de software de bibliotecas do que nunca, o que também significa que as aplicações passam mais tempo a executar código que provém de bibliotecas. Se a execução de código de bibliotecas contribuir significativamente para o tempo de execução de certas aplicações, uma abordagem atrativa para otimizar essas aplicações passa por paralelizar as bibliotecas por elas usadas, conduzindo a uma melhor utilização do hardware multiprocessador moderno. O sucesso desta abordagem depende da frequência e do tempo com que as bibliotecas são usadas. Para avaliar o papel que as bibliotecas de terceiros desempenham nas aplicações Java modernas e o eventual efeito que a sua paralelização possa ter, este trabalho apresenta um estudo acerca da utilização dessas bibliotecas e os resultados de paralelizar algumas das principais bibliotecas de acordo com o estudo. O conjunto de dados utilizado neste trabalho é composto por mais de duas mil aplicações Java open source disponíveis no repositório Sourceforge. A análise revelou que mais de 40% das aplicações testadas usa bibliotecas de terceiros e que, em alguns casos, o tempo passado a executar código de bibliotecas é suficientemente alto para ser potencialmente útil paralelizar essas bibliotecas.
Bibliotecas Java, Programação Paralela, Ambientes Multiprocessador, Código Aberto

Novembro 16, 2012, 10:30

Documentos da dissertação ainda não disponíveis publicamente

Orientação

ORIENTADOR

João Manuel Pinheiro Cachopo

Departamento de Engenharia Informática (DEI)

Professor Auxiliar