Document details

Análise de consumo de energia e desempenho de memórias transacionais em software em ambiente de computação real

Author(s): Rico, Timóteo Matthies

Date: 2020

Origin: Oasisbr

Subject(s): CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO; Computação; Programação concorrente; Memória transacional em software; Consumo de energia; Concurrent programming; Software transaction memories; Energy consumption; CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO; CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO; Computação; Computação; Programação concorrente; Programação concorrente; Memória transacional em software; Memória transacional em software; Consumo de energia; Consumo de energia; Concurrent programming; Concurrent programming; Software transaction memories; Software transaction memories; Energy consumption; Energy consumption


Description

Submitted by Aline Batista (alinehb.ufpel@gmail.com) on 2020-06-03T23:27:45Z No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Dissertacao_Timoteo_Rico.pdf: 5790765 bytes, checksum: cec27b4d69adab9fcf9e6ffe4f131b02 (MD5)

Approved for entry into archive by Aline Batista (alinehb.ufpel@gmail.com) on 2020-06-04T01:53:03Z (GMT) No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Dissertacao_Timoteo_Rico.pdf: 5790765 bytes, checksum: cec27b4d69adab9fcf9e6ffe4f131b02 (MD5)

Made available in DSpace on 2020-06-04T01:53:36Z (GMT). No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) Dissertacao_Timoteo_Rico.pdf: 5790765 bytes, checksum: cec27b4d69adab9fcf9e6ffe4f131b02 (MD5) Previous issue date: 2013-11-22

Sem bolsa

Com o advento de arquiteturas multiprocessadas novos desafios foram introduzidos ao desenvolvimento de software. Dentre estes desafios, realizar a sincronização necessária para evitar condições de corrida entre os fluxos de execução, é uma das principais dificuldades na programação concorrente. Um novo mecanismo de sincronização, denominado Memória Transacional, tem sido desenvolvido por pesquisadores de programação concorrente com o objetivo de reduzir as dificuldades e limitações encontradas em mecanismos de sincronização tradicionais. Por se tratar de uma alternativa recentemente proposta, pouco se conhece a respeito do consumo de energia de Memórias Transacionais, em especial de implementações em software. Nesse contexto, o presente trabalho apresenta a análise e caracterização do consumo de energia e desempenho de quatro importantes bibliotecas de Memória Transacional em Software (STM), TL2, TinySTM, SwissTM e AdaptSTM, utilizando-se o benchmark STAMP. Diferente de outros trabalhos, as execuções não foram simuladas mas executadas em um ambiente de computação real. Resultados obtidos mostram a SwissTM como a biblioteca mais eficiente em termos de consumo de energia e desempenho, seguida pela AdaptSTM, TinySTM e TL2, na maioria dos cenários de execução utilizando-se até 8 threads. Constata-se que a escalabilidade das STMs utilizadas está relacionada diretamente à particularidade das estratégias de detecção e resolução de conflitos empregada por cada biblioteca. Nesta perspectiva, verifica-se que em aplicações com transações curtas a AdaptSTM mostra-se a biblioteca mais eficiente. Em aplicações com transações médias, a SwissTM apresenta a melhor escalabilidade. Em cenários com longas transações e sob média/alta contenção a TL2 apresenta os melhores resultados. A TinySTM, por sua vez, mostra-se a biblioteca menos eficiente em termos de escalabilidade na maioria dos cenários, exibindo bons resultados somente em aplicações que apresentem mínimas taxas de cancelamentos.

With the advent of multicore architectures, new challenges to software development were raised. Among those, one of the main issues in concurrent programming is related to the synchronization required to avoid race conditions. Transactional Memories have been developed by concurrent programming researchers in order to reduce dificulties and limitations found in traditional synchronization mechanisms. As it is a more recent approach to synchronization, little is known about energy consumption of Transactional Memories, in special of software implementations. In this context, this work presents the analysis and characterization of energy consumption and performance of four important Transactional Memory libraries: TL2, TinySTM, SwissTM, and AdaptSTM, using the STAMP benchmark. A differential to other works is that results were obtained for a real computational environment and not simulated. Results show that SwissTM is the most efficient library of the four in terms of energy consumption and performance, followed by AdapSTM, TinySTM, and TL2 in this order, for most of the execution scenarios and 8 threads at most. STM’s scalability is directly tied to the strategies for detection and resolution of conflicts. In this perspective, AdaptSTM is the best STM for applications with short transactions. SwissTM presents the best results for medium transactions. Long transactions and medium/high contention are best handled by TL2. On the other hand, TinySTM shows the worst scalability for most scenarios, with good results only for applications with very small abort rates.

Document Type Master thesis
Language Portuguese
facebook logo  linkedin logo  twitter logo 
mendeley logo

Related documents

No related documents