Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia

Detalhes bibliográficos
Autor(a) principal: Baldassin, Alexandro José, 1978-
Data de Publicação: 2009
Tipo de documento: Tese
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
Texto Completo: https://hdl.handle.net/20.500.12733/1612070
Resumo: Orientador: Paulo Cesar Centoducatte
id UNICAMP-30_ce36a7ac3383f7e74d1fb1d725d867d5
oai_identifier_str oai::768401
network_acronym_str UNICAMP-30
network_name_str Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
repository_id_str
spelling Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energiaExploiting software transactional memory in the context of asymmetric architecturesMemória transacionalProgramação paralela (Computação)Arquitetura de computadorEstimativa de potênciaTransactional memoryParallel programming (Computer science)Computer architecturePower estimationOrientador: Paulo Cesar CentoducatteTese (doutorado) - Universidade Estadual de Campinas, Instituto de ComputaçãoResumo: A adoção dos microprocessadores com múltiplos núcleos de execução pela indústria semicondutora tem criado uma crescente necessidade por novas linguagens, metodologias e ferramentas que tornem o desenvolvimento de sistemas concorrentes mais rápido, eficiente e acessível aos programadores de todos os níveis. Uma das principais dificuldades em programação concorrente com memória compartilhada é garantir a correta sincronização do código, evitando assim condições de corrida que podem levar o sistema a um estado inconsistente. A sincronização tem sido tradicionalmente realizada através de métodos baseados em travas, reconhecidos amplamente por serem de difícil uso e pelas anomalias causadas. Um novo mecanismo, conhecido como memória transacional (TM), tem sido alvo de muita pesquisa recentemente e promete simplificar o processo de sincronização, além de possibilitar maior oportunidade para extração de paralelismo e consequente desempenho. O cerne desta tese é formado por três trabalhos desenvolvidos no contexto dos sistemas de memória transacional em software (STM). Primeiramente, apresentamos uma implementação de STM para processadores assimétricos, usando a arquitetura Cell/B.E. como foco. Como principal resultado, constatamos que o uso de sistemas transacionais em arquiteturas assimétricas também é promissor, principalmente pelo fator escalabilidade. No segundo trabalho, adotamos uma abordagem diferente e sugerimos um sistema de STM especialmente voltado para o domínio de jogos computacionais. O principal motivo que nos levou nesta direção é o baixo desempenho das implementações atuais de STM. Um estudo de caso conduzido a partir de um jogo complexo mostra a eficácia do sistema proposto. Finalmente, apresentamos pela primeira vez uma caracterização do consumo de energia de um sistema de STM considerado estado da arte. Além da caracterização, também propomos uma técnica para redução do consumo em casos de alta contenção. Resultados obtidos a partir dessa técnica revelam ganhos de até 87% no consumo de energiaAbstract: The shift towards multicore processors taken by the semiconductor industry has initiated an era in which new languages, methodologies and tools are of paramount importance to the development of efficient concurrent systems that can be built in a timely way by all kinds of programmers. One of the main obstacles faced by programmers when dealing with shared memory programming concerns the use of synchronization mechanisms so as to avoid race conditions that could possibly lead the system to an inconsistent state. Synchronization has been traditionally achieved by means of locks (or variations thereof), widely known by their anomalies and hard-to-get-it-right facets. A new mechanism, known as transactional memory (TM), has recently been the focus of a lot of research and shows potential to simplify code synchronization as well as delivering more parallelism and, therefore, better performance. This thesis presents three works focused on different aspects of software transactional memory (STM) systems. Firstly, we show an STM implementation for asymmetric processors, focusing on the architecture of Cell/B.E. As an important result, we find out that memory transactions are indeed promising for asymmetric architectures, specially due to their scalability. Secondly, we take a different approach to STM implementation by devising a system specially targeted at computer games. The decision was guided by poor performance figures usually seen on current STM implementations. We also conduct a case study using a complex game that effectively shows the system's efficiency. Finally, we present the energy consumption characterization of a state-of-the-art STM for the first time. Based on the observed characterization, we also propose a technique aimed at reducing energy consumption in highly contended scenarios. Our results show that the technique is indeed effective in such cases, improving the energy consumption by up to 87%DoutoradoSistemas de ComputaçãoDoutor em Ciência da Computação[s.n.]Centoducatte, Paulo Cesar, 1957-Meira Junior, WagnerLima, Manoel Eusebio deGarcia, Islene CalciolariCortês, Mario LúcioUniversidade Estadual de Campinas (UNICAMP). Instituto de ComputaçãoPrograma de Pós-Graduação em Ciência da ComputaçãoUNIVERSIDADE ESTADUAL DE CAMPINASBaldassin, Alexandro José, 1978-2009info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdf101 p. : il.https://hdl.handle.net/20.500.12733/1612070BALDASSIN, Alexandro José. Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia. 2009. 101 p. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1612070. Acesso em: 3 set. 2024.https://repositorio.unicamp.br/acervo/detalhe/768401porreponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)instname:Universidade Estadual de Campinas (UNICAMP)instacron:UNICAMPinfo:eu-repo/semantics/openAccess2017-02-18T05:52:09Zoai::768401Biblioteca Digital de Teses e DissertaçõesPUBhttp://repositorio.unicamp.br/oai/tese/oai.aspsbubd@unicamp.bropendoar:2017-02-18T05:52:09Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)false
dc.title.none.fl_str_mv Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
Exploiting software transactional memory in the context of asymmetric architectures
title Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
spellingShingle Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
Baldassin, Alexandro José, 1978-
Memória transacional
Programação paralela (Computação)
Arquitetura de computador
Estimativa de potência
Transactional memory
Parallel programming (Computer science)
Computer architecture
Power estimation
title_short Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
title_full Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
title_fullStr Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
title_full_unstemmed Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
title_sort Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia
author Baldassin, Alexandro José, 1978-
author_facet Baldassin, Alexandro José, 1978-
author_role author
dc.contributor.none.fl_str_mv Centoducatte, Paulo Cesar, 1957-
Meira Junior, Wagner
Lima, Manoel Eusebio de
Garcia, Islene Calciolari
Cortês, Mario Lúcio
Universidade Estadual de Campinas (UNICAMP). Instituto de Computação
Programa de Pós-Graduação em Ciência da Computação
UNIVERSIDADE ESTADUAL DE CAMPINAS
dc.contributor.author.fl_str_mv Baldassin, Alexandro José, 1978-
dc.subject.por.fl_str_mv Memória transacional
Programação paralela (Computação)
Arquitetura de computador
Estimativa de potência
Transactional memory
Parallel programming (Computer science)
Computer architecture
Power estimation
topic Memória transacional
Programação paralela (Computação)
Arquitetura de computador
Estimativa de potência
Transactional memory
Parallel programming (Computer science)
Computer architecture
Power estimation
description Orientador: Paulo Cesar Centoducatte
publishDate 2009
dc.date.none.fl_str_mv 2009
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/20.500.12733/1612070
BALDASSIN, Alexandro José. Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia. 2009. 101 p. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1612070. Acesso em: 3 set. 2024.
url https://hdl.handle.net/20.500.12733/1612070
identifier_str_mv BALDASSIN, Alexandro José. Explorando memoria transacional em software nos contextos de arquiteturas assimetricas, jogos computacionais e consumo de energia. 2009. 101 p. Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação, Campinas, SP. Disponível em: https://hdl.handle.net/20.500.12733/1612070. Acesso em: 3 set. 2024.
dc.language.iso.fl_str_mv por
language por
dc.relation.none.fl_str_mv https://repositorio.unicamp.br/acervo/detalhe/768401
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
101 p. : il.
dc.publisher.none.fl_str_mv [s.n.]
publisher.none.fl_str_mv [s.n.]
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
instname:Universidade Estadual de Campinas (UNICAMP)
instacron:UNICAMP
instname_str Universidade Estadual de Campinas (UNICAMP)
instacron_str UNICAMP
institution UNICAMP
reponame_str Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
collection Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP)
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da Universidade Estadual de Campinas (UNICAMP) - Universidade Estadual de Campinas (UNICAMP)
repository.mail.fl_str_mv sbubd@unicamp.br
_version_ 1809189030008455168