Optimizing memory transactions for large-scale programs
Autor(a) principal: | |
---|---|
Data de Publicação: | 2016 |
Outros Autores: | |
Tipo de documento: | Artigo |
Idioma: | eng |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10400.21/6011 |
Resumo: | Even though Software Transactional Memory (STM) is one of the most promising approaches to simplify concurrent programming, current STM implementations incur significant overheads that render them impractical for many real-sized programs. The key insight of this work is that we do not need to use the same costly barriers for all the memory managed by a real-sized application, if only a small fraction of the memory is under contention lightweight barriers may be used in this case. In this work, we propose a new solution based on an approach of adaptive object metadata (AOM) to promote the use of a fast path to access objects that are not under contention. We show that this approach is able to make the performance of an STM competitive with the best fine-grained lock-based approaches in some of the more challenging benchmarks. (C) 2015 Elsevier Inc. All rights reserved. |
id |
RCAP_a9946efd9be50bb35bc71af2301fc06f |
---|---|
oai_identifier_str |
oai:repositorio.ipl.pt:10400.21/6011 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Optimizing memory transactions for large-scale programsSoftware transactional memoryRuntime optimizationsConcurrent programmingEven though Software Transactional Memory (STM) is one of the most promising approaches to simplify concurrent programming, current STM implementations incur significant overheads that render them impractical for many real-sized programs. The key insight of this work is that we do not need to use the same costly barriers for all the memory managed by a real-sized application, if only a small fraction of the memory is under contention lightweight barriers may be used in this case. In this work, we propose a new solution based on an approach of adaptive object metadata (AOM) to promote the use of a fast path to access objects that are not under contention. We show that this approach is able to make the performance of an STM competitive with the best fine-grained lock-based approaches in some of the more challenging benchmarks. (C) 2015 Elsevier Inc. All rights reserved.Academic Press Inc Elsevier ScienceRCIPLCarvalho, Fernando MiguelCachopo, João2016-04-18T13:18:40Z2016-032016-03-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfhttp://hdl.handle.net/10400.21/6011engCARVALHO, Fernando Miguel; CACHOPO, João - Optimizing memory transactions for large-scale programs. Journal of Parallel and Distributed Computing. ISSN 0743-7315. Vol. 89 (2016), pp. 13-240743-731510.1016/j.jpdc.2015.12.001metadata only accessinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-08-03T09:50:15Zoai:repositorio.ipl.pt:10400.21/6011Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T20:15:13.520924Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Optimizing memory transactions for large-scale programs |
title |
Optimizing memory transactions for large-scale programs |
spellingShingle |
Optimizing memory transactions for large-scale programs Carvalho, Fernando Miguel Software transactional memory Runtime optimizations Concurrent programming |
title_short |
Optimizing memory transactions for large-scale programs |
title_full |
Optimizing memory transactions for large-scale programs |
title_fullStr |
Optimizing memory transactions for large-scale programs |
title_full_unstemmed |
Optimizing memory transactions for large-scale programs |
title_sort |
Optimizing memory transactions for large-scale programs |
author |
Carvalho, Fernando Miguel |
author_facet |
Carvalho, Fernando Miguel Cachopo, João |
author_role |
author |
author2 |
Cachopo, João |
author2_role |
author |
dc.contributor.none.fl_str_mv |
RCIPL |
dc.contributor.author.fl_str_mv |
Carvalho, Fernando Miguel Cachopo, João |
dc.subject.por.fl_str_mv |
Software transactional memory Runtime optimizations Concurrent programming |
topic |
Software transactional memory Runtime optimizations Concurrent programming |
description |
Even though Software Transactional Memory (STM) is one of the most promising approaches to simplify concurrent programming, current STM implementations incur significant overheads that render them impractical for many real-sized programs. The key insight of this work is that we do not need to use the same costly barriers for all the memory managed by a real-sized application, if only a small fraction of the memory is under contention lightweight barriers may be used in this case. In this work, we propose a new solution based on an approach of adaptive object metadata (AOM) to promote the use of a fast path to access objects that are not under contention. We show that this approach is able to make the performance of an STM competitive with the best fine-grained lock-based approaches in some of the more challenging benchmarks. (C) 2015 Elsevier Inc. All rights reserved. |
publishDate |
2016 |
dc.date.none.fl_str_mv |
2016-04-18T13:18:40Z 2016-03 2016-03-01T00:00:00Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
format |
article |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10400.21/6011 |
url |
http://hdl.handle.net/10400.21/6011 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.relation.none.fl_str_mv |
CARVALHO, Fernando Miguel; CACHOPO, João - Optimizing memory transactions for large-scale programs. Journal of Parallel and Distributed Computing. ISSN 0743-7315. Vol. 89 (2016), pp. 13-24 0743-7315 10.1016/j.jpdc.2015.12.001 |
dc.rights.driver.fl_str_mv |
metadata only access info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
metadata only access |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Academic Press Inc Elsevier Science |
publisher.none.fl_str_mv |
Academic Press Inc Elsevier Science |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799133409839153152 |