Use este identificador para citar o ir al link de este elemento: http://hdl.handle.net/1843/ESBF-97CNCD
Registro completo de metadatos
Campo DCValorIdioma
dc.contributor.advisor1Fernando Magno Quintao Pereirapt_BR
dc.contributor.referee1Mariza Andrade da Silva Bigonhapt_BR
dc.contributor.referee2Renato Antonio Celso Ferreirapt_BR
dc.contributor.referee3Fábio Mascarenhaspt_BR
dc.creatorIgor Rafael de Assis Costapt_BR
dc.date.accessioned2019-08-14T15:55:15Z-
dc.date.available2019-08-14T15:55:15Z-
dc.date.issued2013-03-07pt_BR
dc.identifier.urihttp://hdl.handle.net/1843/ESBF-97CNCD-
dc.description.abstractJavaScript emerges today as one of the most important programming languages for the development of client-side web applications. Therefore, it is essential that browsers be able to execute JavaScript programs efficiently. However, the dynamic nature of this programming language makes it very challenging to achieve this much needed efficiency. The just-in-time compiler seems to be the current weapon of choice that developers use to face these challenges. In this work we propose Parameter-based Speculative Value Specialization as a way to improve the quality of the code produced by JIT engines. We have empirically observed that almost 60% of the JavaScript functions found in the worlds 100 most popular websites are called only once, or are called with the same parameters. Capitalizing on this observation, we adapt several classic compiler optimizations to specialize code based on the run-time values of functions actual parameters. We have implemented the techniques proposed in this work in IonMonkey, an industrial quality JavaScript JIT compiler developed in the Mozilla Foundation. Our experiments, run across three popular JavaScript benchmarks, SunSpider, V8 and Kraken, show that, in spite of its highly speculative nature, our optimization pays for itself. As an example, we have been able to speedup the V8 benchmark by 4.83%, and to reduce the size of its native code by 18.84%.pt_BR
dc.description.resumoJavaScript emerge atualmente como uma das mais importantes linguagens de programação no desenvolvimento da interface com o usuário de aplicações Web. Desse modo, é essencial que os navegadores de Internet sejam capazes de executar programasJavaScript eficientemente. Entretanto, a natureza dinâmica dessa linguagem torna a eficiência de sua execução um desafio.Compiladores dinâmicos aparentam ser a ferramenta mais escolhida por desenvolvedores para lidar com tais desafios. Neste trabalho nós propomos uma técnica de especialização de valores especulativa baseada em parâmetros de função como uma estratégia para melhorar a qualidade do código produzido dinamicamente. Através de observação empírica, descobrimos que aproximadamente 60% das funções JavaScript encontradas nos 100 sítios web mais populares são chamadas apenas uma vez, ou são chamadas sempre com os mesmo parâmetros. Baseado nessa observação, neste trabalho nós adaptamos diferentes otimizações clássicas de código para especializar código a partir dos valores atuais dos parâmetros de uma função. As técnicas propostas foram implementadas no IonMonkey, um compilador JIT para JavaScript de qualidade industrial desenvolvido pela fundação Mozilla. Por meio de experimentos executados em três coleções populares de testes, SunSpider, V8 e Kraken, foram alcançados ganhos de desempenho apesar da natureza especulativa da técnica proposta. Por exemplo, combinando algumas das diferentes otimizações propostas, obtivemos ganhos de 5.38% no tempo de execução na coleção SunSpider, além de reduzir o tamanho do código nativo produzido em 16.72%.pt_BR
dc.languagePortuguêspt_BR
dc.publisherUniversidade Federal de Minas Geraispt_BR
dc.publisher.initialsUFMGpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectCiência da Computaçãopt_BR
dc.subject.otherLinguagem de programação (Computadores)pt_BR
dc.subject.otherComputaçãopt_BR
dc.subject.otherCompiladores (Programas de computador)pt_BR
dc.titleEspecialização especulativa de valores baseada em parâmetrospt_BR
dc.typeDissertação de Mestradopt_BR
Aparece en las colecciones:Dissertações de Mestrado

archivos asociados a este elemento:
archivo Descripción TamañoFormato 
igorrafael.pdf2.14 MBAdobe PDFVisualizar/Abrir


Los elementos en el repositorio están protegidos por copyright, con todos los derechos reservados, salvo cuando es indicado lo contrario.