{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,3]],"date-time":"2026-04-03T22:06:34Z","timestamp":1775253994149,"version":"3.50.1"},"reference-count":70,"publisher":"Association for Computing Machinery (ACM)","issue":"6","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2020,2]]},"abstract":"<jats:p>\n            In this paper, we propose a new parallelism model denoted as\n            <jats:italic>MPI<\/jats:italic>\n            *\n            <jats:italic>X<\/jats:italic>\n            and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes\n            <jats:italic>thread-based partitioning<\/jats:italic>\n            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\n            <jats:italic>MPI + X parallelism model<\/jats:italic>\n            , which utilizes\n            <jats:italic>process-based partitioning<\/jats:italic>\n            to distribute data among processes as a way to\n            <jats:italic>scale out<\/jats:italic>\n            on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to\n            <jats:italic>scale up<\/jats:italic>\n            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.\n          <\/jats:p>","DOI":"10.14778\/3380750.3380751","type":"journal-article","created":{"date-parts":[[2020,3,11]],"date-time":"2020-03-11T21:49:08Z","timestamp":1583963348000},"page":"783-797","source":"Crossref","is-referenced-by-count":12,"title":["Graphite"],"prefix":"10.14778","volume":"13","author":[{"given":"Mohammad Hasanzadeh","family":"Mofrad","sequence":"first","affiliation":[{"name":"University of Pittsburgh"}]},{"given":"Rami","family":"Melhem","sequence":"additional","affiliation":[{"name":"University of Pittsburgh"}]},{"given":"Yousuf","family":"Ahmad","sequence":"additional","affiliation":[{"name":"Carnegie Mellon University in Qatar, Doha, Qatar"}]},{"given":"Mohammad","family":"Hammoud","sequence":"additional","affiliation":[{"name":"Carnegie Mellon University in Qatar, Doha, Qatar"}]}],"member":"320","published-online":{"date-parts":[[2020,3,11]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.14778\/3204028.3204035"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2016.86"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/3307681.3326609"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2712386.2712388"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2015.12"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2017.112"},{"key":"e_1_2_1_7_1","first-page":"261","volume-title":"ACM Sigplan Notices","author":"Boehm H.-J.","year":"2005"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/988672.988752"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.14778\/2735471.2735477"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2008.4536313"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1177\/1094342011403516"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPSW.2017.117"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1137\/1.9781611972740.43"},{"key":"e_1_2_1_14_1","first-page":"1","volume-title":"Proceedings of the Tenth European Conference on Computer Systems","author":"Chen R."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.14778\/2824032.2824077"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304056"},{"key":"e_1_2_1_17_1","unstructured":"T. Davis. Algorithm 9xx: Suitesparse: Graphblas: graph algorithms in the language of sparse linear algebra. Submitted to ACM TOMS 2018.  T. Davis. Algorithm 9xx: Suitesparse: Graphblas: graph algorithms in the language of sparse linear algebra. Submitted to ACM TOMS 2018."},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3087556.3087580"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/CCGRID.2018.00078"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPSW.2015.19"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/0097-3165(93)90095-P"},{"key":"e_1_2_1_22_1","first-page":"2","volume-title":"OSDI","volume":"12","author":"Gonzalez J. E."},{"key":"e_1_2_1_23_1","first-page":"599","volume-title":"11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14)","author":"Gonzalez J. E.","year":"2014"},{"key":"e_1_2_1_24_1","first-page":"246","volume-title":"ACM SIGPLAN Notices","author":"Grossman S.","year":"2018"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.14778\/2777598.2777604"},{"key":"e_1_2_1_26_1","unstructured":"Intel. Intel mpi library. https:\/\/software.intel.com\/en-us\/mpi-library.  Intel. Intel mpi library. https:\/\/software.intel.com\/en-us\/mpi-library."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3308558.3313434"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDM.2009.14"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2465351.2465369"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2967938.2967948"},{"key":"e_1_2_1_31_1","first-page":"31","volume-title":"Presented as part of the 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI 12)","author":"Kyrola A.","year":"2012"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.14778\/3324301.3324306"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2462902.2462903"},{"key":"e_1_2_1_34_1","first-page":"56","volume-title":"Proceedings of the International Conference for High Performance Computing, Networking, Storage, and Analysis","author":"Lin H."},{"key":"e_1_2_1_35_1","unstructured":"Linux. Numa - numa policy library. http:\/\/man7.org\/linux\/man-pages\/man3\/numa.3.html.  Linux. Numa - numa policy library. http:\/\/man7.org\/linux\/man-pages\/man3\/numa.3.html."},{"key":"e_1_2_1_36_1","unstructured":"Linux. Posix thread (pthread) library. http:\/\/man7.org\/linux\/man-pages\/man7\/pthreads.7.html.  Linux. Posix thread (pthread) library. http:\/\/man7.org\/linux\/man-pages\/man7\/pthreads.7.html."},{"key":"e_1_2_1_37_1","first-page":"285","volume-title":"15th USENIX Conference on File and Storage Technologies (FAST 17)","author":"Liu H.","year":"2017"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.14778\/2212351.2212354"},{"key":"e_1_2_1_39_1","unstructured":"Y. Low J. E. Gonzalez A. Kyrola D. Bickson C. E. Guestrin and J. Hellerstein. Graphlab: A new framework for parallel machine learning. arXiv preprint arXiv:1408.2041 2014.  Y. Low J. E. Gonzalez A. Kyrola D. Bickson C. E. Guestrin and J. Hellerstein. Graphlab: A new framework for parallel machine learning. arXiv preprint arXiv:1408.2041 2014."},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICASSP.2012.6289128"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/3064176.3064191"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1807167.1807184"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLUSTER.2019.8891008"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517349.2522739"},{"key":"e_1_2_1_45_1","unstructured":"OpenMP. The openmp api specification for parallel programming. https:\/\/www.openmp.org\/.  OpenMP. The openmp api specification for parallel programming. https:\/\/www.openmp.org\/."},{"key":"e_1_2_1_46_1","unstructured":"OpenMPI. Open mpi: Open source high performance computing. https:\/\/www.open-mpi.org\/.  OpenMPI. Open mpi: Open source high performance computing. https:\/\/www.open-mpi.org\/."},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.14778\/3025111.3025117"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.14778\/2856318.2856319"},{"key":"e_1_2_1_49_1","unstructured":"Schedmd. Slurm workload manager. https:\/\/slurm.schedmd.com\/.  Schedmd. Slurm workload manager. https:\/\/slurm.schedmd.com\/."},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2019.00069"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/2442516.2442530"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/2597652.2597658"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-88436-1_36"},{"key":"e_1_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.5555\/2032397.2032399"},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1109\/MCSE.2013.19"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.14778\/2809974.2809983"},{"key":"e_1_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLUSTER.2019.8891027"},{"key":"e_1_2_1_58_1","first-page":"162","volume-title":"Programming and Performance Visualization Tools","author":"Taheri S.","year":"2017"},{"key":"e_1_2_1_59_1","first-page":"14","article-title":"Mpi at exascale","volume":"2","author":"Thakur R.","year":"2010","journal-title":"Procceedings of SciDAC"},{"key":"e_1_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/2465351.2465371"},{"key":"e_1_2_1_61_1","first-page":"194","volume-title":"ACM SIGPLAN Notices","author":"Xie C.","year":"2015"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304012"},{"key":"e_1_2_1_63_1","doi-asserted-by":"crossref","unstructured":"C. Yang A. Buluc and J. D. Owens. Implementing push-pull efficiently in graphblas. arXiv preprint arXiv:1804.03327 2018.  C. Yang A. Buluc and J. D. Owens. Implementing push-pull efficiently in graphblas. arXiv preprint arXiv:1804.03327 2018.","DOI":"10.1145\/3225058.3225122"},{"key":"e_1_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2858788.2688507"},{"key":"e_1_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPSW.2016.185"},{"key":"e_1_2_1_66_1","doi-asserted-by":"publisher","DOI":"10.1109\/BigData.2017.8257937"},{"key":"e_1_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/3276491"},{"key":"e_1_2_1_68_1","first-page":"45","volume-title":"13th USENIX Conference on File and Storage Technologies (FAST 15)","author":"Zheng D.","year":"2015"},{"key":"e_1_2_1_69_1","first-page":"301","volume-title":"12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16)","author":"Zhu X.","year":"2016"},{"key":"e_1_2_1_70_1","first-page":"375","volume-title":"2015 USENIX Annual Technical Conference (USENIX ATC 15)","author":"Zhu X.","year":"2015"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/3380750.3380751","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T09:28:35Z","timestamp":1672219715000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/3380750.3380751"}},"subtitle":["a NUMA-aware HPC system for graph analytics based on a new MPI * X parallelism model"],"short-title":[],"issued":{"date-parts":[[2020,2]]},"references-count":70,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2020,2]]}},"alternative-id":["10.14778\/3380750.3380751"],"URL":"https:\/\/doi.org\/10.14778\/3380750.3380751","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2020,2]]}}}