Exportação concluída — 

Accelerating Graph Applications Using Phased Transactional Memory

Detalhes bibliográficos
Autor(a) principal: Morales, Catalina Munoz
Data de Publicação: 2021
Outros Autores: Murari, Rafael [UNESP], de Carvalho, Joao P. L., Honorio, Bruno Chinelato, Baldassin, Alexandro [UNESP], Araujo, Guido
Tipo de documento: Artigo de conferência
Idioma: eng
Título da fonte: Repositório Institucional da UNESP
Texto Completo: http://dx.doi.org/10.1007/978-3-030-85665-6_26
http://hdl.handle.net/11449/222442
Resumo: Due to their fine-grained operations and low conflict rates, graph processing algorithms expose a large amount of parallelism that has been extensively exploited by various parallelization frameworks. Transactional Memory (TM) is a programming model that uses an optimistic concurrency control mechanism to improve the performance of irregular applications, making it a perfect candidate to extract parallelism from graph-based programs. Although fast Hardware TM (HTM) instructions are now available in the ISA extensions of some major processor architectures (e.g., Intel and ARM), balancing the usage of Software TM (STM) and HTM to compensate for capacity and conflict aborts is still a challenging task. This paper presents a Phased TM implementation for graph applications, called Graph-Oriented Transactional Memory (GoTM). It uses a three-state (HTM, STM, GLOCK) concurrency control automaton that leverages both HTM and STM implementations to speed-up graph applications. Experimental results using seven well-known graph programs and real-life workloads show that GoTM can outperform other Phased TM systems and lock-based concurrency mechanisms such as the one present in Galois, a state-of-the-art framework for graph computations.
id UNSP_de72eab56976c0b59c7f759325c2ba17
oai_identifier_str oai:repositorio.unesp.br:11449/222442
network_acronym_str UNSP
network_name_str Repositório Institucional da UNESP
repository_id_str 2946
spelling Accelerating Graph Applications Using Phased Transactional MemoryGraph processingHardware transactional memoryLarge-scale graphsSoftware transactional memoryDue to their fine-grained operations and low conflict rates, graph processing algorithms expose a large amount of parallelism that has been extensively exploited by various parallelization frameworks. Transactional Memory (TM) is a programming model that uses an optimistic concurrency control mechanism to improve the performance of irregular applications, making it a perfect candidate to extract parallelism from graph-based programs. Although fast Hardware TM (HTM) instructions are now available in the ISA extensions of some major processor architectures (e.g., Intel and ARM), balancing the usage of Software TM (STM) and HTM to compensate for capacity and conflict aborts is still a challenging task. This paper presents a Phased TM implementation for graph applications, called Graph-Oriented Transactional Memory (GoTM). It uses a three-state (HTM, STM, GLOCK) concurrency control automaton that leverages both HTM and STM implementations to speed-up graph applications. Experimental results using seven well-known graph programs and real-life workloads show that GoTM can outperform other Phased TM systems and lock-based concurrency mechanisms such as the one present in Galois, a state-of-the-art framework for graph computations.Institute of Computing UNICAMPUniversidade Estadual Paulista (UNESP)Universidade Estadual Paulista (UNESP)Universidade Estadual de Campinas (UNICAMP)Universidade Estadual Paulista (UNESP)Morales, Catalina MunozMurari, Rafael [UNESP]de Carvalho, Joao P. L.Honorio, Bruno ChinelatoBaldassin, Alexandro [UNESP]Araujo, Guido2022-04-28T19:44:44Z2022-04-28T19:44:44Z2021-01-01info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/conferenceObject421-434http://dx.doi.org/10.1007/978-3-030-85665-6_26Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), v. 12820 LNCS, p. 421-434.1611-33490302-9743http://hdl.handle.net/11449/22244210.1007/978-3-030-85665-6_262-s2.0-85115163216Scopusreponame:Repositório Institucional da UNESPinstname:Universidade Estadual Paulista (UNESP)instacron:UNESPengLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)info:eu-repo/semantics/openAccess2022-04-28T19:44:44Zoai:repositorio.unesp.br:11449/222442Repositório InstitucionalPUBhttp://repositorio.unesp.br/oai/requestrepositoriounesp@unesp.bropendoar:29462022-04-28T19:44:44Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP)false
dc.title.none.fl_str_mv Accelerating Graph Applications Using Phased Transactional Memory
title Accelerating Graph Applications Using Phased Transactional Memory
spellingShingle Accelerating Graph Applications Using Phased Transactional Memory
Morales, Catalina Munoz
Graph processing
Hardware transactional memory
Large-scale graphs
Software transactional memory
title_short Accelerating Graph Applications Using Phased Transactional Memory
title_full Accelerating Graph Applications Using Phased Transactional Memory
title_fullStr Accelerating Graph Applications Using Phased Transactional Memory
title_full_unstemmed Accelerating Graph Applications Using Phased Transactional Memory
title_sort Accelerating Graph Applications Using Phased Transactional Memory
author Morales, Catalina Munoz
author_facet Morales, Catalina Munoz
Murari, Rafael [UNESP]
de Carvalho, Joao P. L.
Honorio, Bruno Chinelato
Baldassin, Alexandro [UNESP]
Araujo, Guido
author_role author
author2 Murari, Rafael [UNESP]
de Carvalho, Joao P. L.
Honorio, Bruno Chinelato
Baldassin, Alexandro [UNESP]
Araujo, Guido
author2_role author
author
author
author
author
dc.contributor.none.fl_str_mv Universidade Estadual de Campinas (UNICAMP)
Universidade Estadual Paulista (UNESP)
dc.contributor.author.fl_str_mv Morales, Catalina Munoz
Murari, Rafael [UNESP]
de Carvalho, Joao P. L.
Honorio, Bruno Chinelato
Baldassin, Alexandro [UNESP]
Araujo, Guido
dc.subject.por.fl_str_mv Graph processing
Hardware transactional memory
Large-scale graphs
Software transactional memory
topic Graph processing
Hardware transactional memory
Large-scale graphs
Software transactional memory
description Due to their fine-grained operations and low conflict rates, graph processing algorithms expose a large amount of parallelism that has been extensively exploited by various parallelization frameworks. Transactional Memory (TM) is a programming model that uses an optimistic concurrency control mechanism to improve the performance of irregular applications, making it a perfect candidate to extract parallelism from graph-based programs. Although fast Hardware TM (HTM) instructions are now available in the ISA extensions of some major processor architectures (e.g., Intel and ARM), balancing the usage of Software TM (STM) and HTM to compensate for capacity and conflict aborts is still a challenging task. This paper presents a Phased TM implementation for graph applications, called Graph-Oriented Transactional Memory (GoTM). It uses a three-state (HTM, STM, GLOCK) concurrency control automaton that leverages both HTM and STM implementations to speed-up graph applications. Experimental results using seven well-known graph programs and real-life workloads show that GoTM can outperform other Phased TM systems and lock-based concurrency mechanisms such as the one present in Galois, a state-of-the-art framework for graph computations.
publishDate 2021
dc.date.none.fl_str_mv 2021-01-01
2022-04-28T19:44:44Z
2022-04-28T19:44:44Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/conferenceObject
format conferenceObject
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://dx.doi.org/10.1007/978-3-030-85665-6_26
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), v. 12820 LNCS, p. 421-434.
1611-3349
0302-9743
http://hdl.handle.net/11449/222442
10.1007/978-3-030-85665-6_26
2-s2.0-85115163216
url http://dx.doi.org/10.1007/978-3-030-85665-6_26
http://hdl.handle.net/11449/222442
identifier_str_mv Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), v. 12820 LNCS, p. 421-434.
1611-3349
0302-9743
10.1007/978-3-030-85665-6_26
2-s2.0-85115163216
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 421-434
dc.source.none.fl_str_mv Scopus
reponame:Repositório Institucional da UNESP
instname:Universidade Estadual Paulista (UNESP)
instacron:UNESP
instname_str Universidade Estadual Paulista (UNESP)
instacron_str UNESP
institution UNESP
reponame_str Repositório Institucional da UNESP
collection Repositório Institucional da UNESP
repository.name.fl_str_mv Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP)
repository.mail.fl_str_mv repositoriounesp@unesp.br
_version_ 1834483206252920832