Graphite: a NUMA-aware HPC system for graph analytics based on a new MPI X parallelism model

In this paper, we propose a new parallelism model denoted as MPI * X and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes thread-based partitioning to distribute computation and communication across threads on a cluster of machin...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings of the VLDB Endowment 2020-02, Vol.13 (6), p.783-797
Hauptverfasser: Mofrad, Mohammad Hasanzadeh, Melhem, Rami, Ahmad, Yousuf, Hammoud, Mohammad
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 797
container_issue 6
container_start_page 783
container_title Proceedings of the VLDB Endowment
container_volume 13
creator Mofrad, Mohammad Hasanzadeh
Melhem, Rami
Ahmad, Yousuf
Hammoud, Mohammad
description In this paper, we propose a new parallelism model denoted as MPI * X and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes thread-based partitioning to distribute computation and communication across threads on a cluster of machines, while eliminating the need for unnecessary thread synchronizations. Consequently, it contrasts with the traditional MPI + X parallelism model , which utilizes process-based partitioning to distribute data among processes as a way to scale out on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to scale up within a machine (the X part). Besides adopting MPI * X, Graphite is NUMA-aware. In particular, it assigns threads to partitions in a way that exploits CPU and memory affinity, alongside leveraging faster MPI shared memory transport. Moreover, it adopts a variant of the popular GAS (Gather, Apply, and Scatter) computing model, thus decoupling the computation of partitions from the communication of partial results. Lastly, it supports thread-level asynchrony, which does not only overlap the computation with communication, but further interleaves multiple communications. We compared Graphite against GraphPad, Gemini, and LA3 graph analytics systems in an HPC environment using different graph applications. Results show that Graphite is roughly up to 3X faster than these state-of-the-art systems.
doi_str_mv 10.14778/3380750.3380751
format Article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_14778_3380750_3380751</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_14778_3380750_3380751</sourcerecordid><originalsourceid>FETCH-LOGICAL-c196t-38e964ff4fa9f288ed7a0a99f1f605ad66f36e9fbbf9b47eb85766d1976e84483</originalsourceid><addsrcrecordid>eNpNzzFrwzAQhmERWrCbdu-fsHsXyae7sZg2CQSyJLORYx11SEmQsvTfF2oPnZ5v-uA15hWhRuc9v1nL4BuoJ3FhyhU2UDGIf_i3C_OU8xmAmJBLU6xTuH2N9_hsHjVccnyZXZrj58eh3VS7_Xrbvu-qEwrdK8tRyKk6DaIr5jj4AEFEUQmaMBCppSja9yq987HnxhMNKJ4iO8d2aWD6PaVrzilqd0vjd0g_HUL3V9LNJbNofwGrxDlg</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Graphite: a NUMA-aware HPC system for graph analytics based on a new MPI X parallelism model</title><source>ACM Digital Library Complete</source><creator>Mofrad, Mohammad Hasanzadeh ; Melhem, Rami ; Ahmad, Yousuf ; Hammoud, Mohammad</creator><creatorcontrib>Mofrad, Mohammad Hasanzadeh ; Melhem, Rami ; Ahmad, Yousuf ; Hammoud, Mohammad</creatorcontrib><description>In this paper, we propose a new parallelism model denoted as MPI * X and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes thread-based partitioning to distribute computation and communication across threads on a cluster of machines, while eliminating the need for unnecessary thread synchronizations. Consequently, it contrasts with the traditional MPI + X parallelism model , which utilizes process-based partitioning to distribute data among processes as a way to scale out on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to scale up within a machine (the X part). Besides adopting MPI * X, Graphite is NUMA-aware. In particular, it assigns threads to partitions in a way that exploits CPU and memory affinity, alongside leveraging faster MPI shared memory transport. Moreover, it adopts a variant of the popular GAS (Gather, Apply, and Scatter) computing model, thus decoupling the computation of partitions from the communication of partial results. Lastly, it supports thread-level asynchrony, which does not only overlap the computation with communication, but further interleaves multiple communications. We compared Graphite against GraphPad, Gemini, and LA3 graph analytics systems in an HPC environment using different graph applications. Results show that Graphite is roughly up to 3X faster than these state-of-the-art systems.</description><identifier>ISSN: 2150-8097</identifier><identifier>EISSN: 2150-8097</identifier><identifier>DOI: 10.14778/3380750.3380751</identifier><language>eng</language><ispartof>Proceedings of the VLDB Endowment, 2020-02, Vol.13 (6), p.783-797</ispartof><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c196t-38e964ff4fa9f288ed7a0a99f1f605ad66f36e9fbbf9b47eb85766d1976e84483</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Mofrad, Mohammad Hasanzadeh</creatorcontrib><creatorcontrib>Melhem, Rami</creatorcontrib><creatorcontrib>Ahmad, Yousuf</creatorcontrib><creatorcontrib>Hammoud, Mohammad</creatorcontrib><title>Graphite: a NUMA-aware HPC system for graph analytics based on a new MPI X parallelism model</title><title>Proceedings of the VLDB Endowment</title><description>In this paper, we propose a new parallelism model denoted as MPI * X and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes thread-based partitioning to distribute computation and communication across threads on a cluster of machines, while eliminating the need for unnecessary thread synchronizations. Consequently, it contrasts with the traditional MPI + X parallelism model , which utilizes process-based partitioning to distribute data among processes as a way to scale out on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to scale up within a machine (the X part). Besides adopting MPI * X, Graphite is NUMA-aware. In particular, it assigns threads to partitions in a way that exploits CPU and memory affinity, alongside leveraging faster MPI shared memory transport. Moreover, it adopts a variant of the popular GAS (Gather, Apply, and Scatter) computing model, thus decoupling the computation of partitions from the communication of partial results. Lastly, it supports thread-level asynchrony, which does not only overlap the computation with communication, but further interleaves multiple communications. We compared Graphite against GraphPad, Gemini, and LA3 graph analytics systems in an HPC environment using different graph applications. Results show that Graphite is roughly up to 3X faster than these state-of-the-art systems.</description><issn>2150-8097</issn><issn>2150-8097</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><recordid>eNpNzzFrwzAQhmERWrCbdu-fsHsXyae7sZg2CQSyJLORYx11SEmQsvTfF2oPnZ5v-uA15hWhRuc9v1nL4BuoJ3FhyhU2UDGIf_i3C_OU8xmAmJBLU6xTuH2N9_hsHjVccnyZXZrj58eh3VS7_Xrbvu-qEwrdK8tRyKk6DaIr5jj4AEFEUQmaMBCppSja9yq987HnxhMNKJ4iO8d2aWD6PaVrzilqd0vjd0g_HUL3V9LNJbNofwGrxDlg</recordid><startdate>20200201</startdate><enddate>20200201</enddate><creator>Mofrad, Mohammad Hasanzadeh</creator><creator>Melhem, Rami</creator><creator>Ahmad, Yousuf</creator><creator>Hammoud, Mohammad</creator><scope>AAYXX</scope><scope>CITATION</scope></search><sort><creationdate>20200201</creationdate><title>Graphite</title><author>Mofrad, Mohammad Hasanzadeh ; Melhem, Rami ; Ahmad, Yousuf ; Hammoud, Mohammad</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c196t-38e964ff4fa9f288ed7a0a99f1f605ad66f36e9fbbf9b47eb85766d1976e84483</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Mofrad, Mohammad Hasanzadeh</creatorcontrib><creatorcontrib>Melhem, Rami</creatorcontrib><creatorcontrib>Ahmad, Yousuf</creatorcontrib><creatorcontrib>Hammoud, Mohammad</creatorcontrib><collection>CrossRef</collection><jtitle>Proceedings of the VLDB Endowment</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Mofrad, Mohammad Hasanzadeh</au><au>Melhem, Rami</au><au>Ahmad, Yousuf</au><au>Hammoud, Mohammad</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Graphite: a NUMA-aware HPC system for graph analytics based on a new MPI X parallelism model</atitle><jtitle>Proceedings of the VLDB Endowment</jtitle><date>2020-02-01</date><risdate>2020</risdate><volume>13</volume><issue>6</issue><spage>783</spage><epage>797</epage><pages>783-797</pages><issn>2150-8097</issn><eissn>2150-8097</eissn><abstract>In this paper, we propose a new parallelism model denoted as MPI * X and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes thread-based partitioning to distribute computation and communication across threads on a cluster of machines, while eliminating the need for unnecessary thread synchronizations. Consequently, it contrasts with the traditional MPI + X parallelism model , which utilizes process-based partitioning to distribute data among processes as a way to scale out on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to scale up within a machine (the X part). Besides adopting MPI * X, Graphite is NUMA-aware. In particular, it assigns threads to partitions in a way that exploits CPU and memory affinity, alongside leveraging faster MPI shared memory transport. Moreover, it adopts a variant of the popular GAS (Gather, Apply, and Scatter) computing model, thus decoupling the computation of partitions from the communication of partial results. Lastly, it supports thread-level asynchrony, which does not only overlap the computation with communication, but further interleaves multiple communications. We compared Graphite against GraphPad, Gemini, and LA3 graph analytics systems in an HPC environment using different graph applications. Results show that Graphite is roughly up to 3X faster than these state-of-the-art systems.</abstract><doi>10.14778/3380750.3380751</doi><tpages>15</tpages></addata></record>
fulltext fulltext
identifier ISSN: 2150-8097
ispartof Proceedings of the VLDB Endowment, 2020-02, Vol.13 (6), p.783-797
issn 2150-8097
2150-8097
language eng
recordid cdi_crossref_primary_10_14778_3380750_3380751
source ACM Digital Library Complete
title Graphite: a NUMA-aware HPC system for graph analytics based on a new MPI X parallelism model
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-29T05%3A14%3A19IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Graphite:%20a%20NUMA-aware%20HPC%20system%20for%20graph%20analytics%20based%20on%20a%20new%20MPI%20X%20parallelism%20model&rft.jtitle=Proceedings%20of%20the%20VLDB%20Endowment&rft.au=Mofrad,%20Mohammad%20Hasanzadeh&rft.date=2020-02-01&rft.volume=13&rft.issue=6&rft.spage=783&rft.epage=797&rft.pages=783-797&rft.issn=2150-8097&rft.eissn=2150-8097&rft_id=info:doi/10.14778/3380750.3380751&rft_dat=%3Ccrossref%3E10_14778_3380750_3380751%3C/crossref%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true