Combinatorial BLAS 2.0: Scaling Combinatorial Algorithms on Distributed-Memory Systems
Combinatorial algorithms such as those that arise in graph analysis, modeling of discrete systems, bioinformatics, and chemistry, are often hard to parallelize. The Combinatorial BLAS library implements key computational primitives for rapid development of combinatorial algorithms in distributed-mem...
Saved in:
| Published in: | IEEE transactions on parallel and distributed systems Vol. 33; no. 4; pp. 989 - 1001 |
|---|---|
| Main Authors: | , , , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
New York
IEEE
01.04.2022
The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Subjects: | |
| ISSN: | 1045-9219, 1558-2183 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Abstract | Combinatorial algorithms such as those that arise in graph analysis, modeling of discrete systems, bioinformatics, and chemistry, are often hard to parallelize. The Combinatorial BLAS library implements key computational primitives for rapid development of combinatorial algorithms in distributed-memory systems. During the decade since its first introduction, the Combinatorial BLAS library has evolved and expanded significantly. This article details many of the key technical features of Combinatorial BLAS version 2.0, such as communication avoidance, hierarchical parallelism via in-node multithreading, accelerator support via GPU kernels, generalized semiring support, implementations of key data structures and functions, and scalable distributed I/O operations for human-readable files. Our article also presents several rules of thumb for choosing the right data structures and functions in Combinatorial BLAS 2.0, under various common application scenarios. |
|---|---|
| AbstractList | Combinatorial algorithms such as those that arise in graph analysis, modeling of discrete systems, bioinformatics, and chemistry, are often hard to parallelize. The Combinatorial BLAS library implements key computational primitives for rapid development of combinatorial algorithms in distributed-memory systems. During the decade since its first introduction, the Combinatorial BLAS library has evolved and expanded significantly. This article details many of the key technical features of Combinatorial BLAS version 2.0, such as communication avoidance, hierarchical parallelism via in-node multithreading, accelerator support via GPU kernels, generalized semiring support, implementations of key data structures and functions, and scalable distributed I/O operations for human-readable files. Our article also presents several rules of thumb for choosing the right data structures and functions in Combinatorial BLAS 2.0, under various common application scenarios. |
| Author | Azad, Ariful Buluc, Aydn Hussain, Md Taufique Gilbert, John R. Selvitopi, Oguz |
| Author_xml | – sequence: 1 givenname: Ariful orcidid: 0000-0003-1332-8630 surname: Azad fullname: Azad, Ariful email: azad@iu.edu organization: Indiana University, Bloomington, IN, USA – sequence: 2 givenname: Oguz orcidid: 0000-0002-0203-0372 surname: Selvitopi fullname: Selvitopi, Oguz email: roselvitopi@lbl.gov organization: Lawrence Berkeley National Laboratory, Berkeley, CA, USA – sequence: 3 givenname: Md Taufique surname: Hussain fullname: Hussain, Md Taufique email: mth@indiana.edu organization: Indiana University, Bloomington, IN, USA – sequence: 4 givenname: John R. surname: Gilbert fullname: Gilbert, John R. email: gilbert@cs.ucsb.edu organization: University of California, Santa Barbara, Santa Barbara, CA, USA – sequence: 5 givenname: Aydn orcidid: 0000-0001-7253-9038 surname: Buluc fullname: Buluc, Aydn email: abuluc@lbl.gov organization: Lawrence Berkeley National Laboratory, Berkeley, CA, USA |
| BookMark | eNp9kE1LAzEQhoMo2FZ_gHhZ8LxrJh828VZbv6CisNVryO5ma8rupibpof_eLS2CHjzNwLzPDPMM0XHnOoPQBeAMAMvrxdsszwgmkFEsGZZwhAbAuUgJCHrc95jxVBKQp2gYwgpjYByzAfqYurawnY7OW90kd_NJnpAM3yZ5qRvbLZPf80mz7Jv42YbEdcnMhuhtsYmmSl9M6_w2ybchmjacoZNaN8GcH-oIvT_cL6ZP6fz18Xk6maclkTSmnBKqCyLHXDAoZEEMLUpRA5Gm0iWwQujaMCIorSjFZSUAKsO44UwKxiSlI3S137v27mtjQlQrt_Fdf1IRLghhN5LwPjXep0rvQvCmVqWNOlrXRa9towCrnUS1k6h2EtVBYk_CH3Ltbav99l_mcs9YY8xPXrIxlv0j33kCfgk |
| CODEN | ITDSEO |
| CitedBy_id | crossref_primary_10_1109_TPDS_2024_3452478 crossref_primary_10_1145_3652579 crossref_primary_10_1016_j_parco_2025_103147 crossref_primary_10_1145_3604606 crossref_primary_10_1177_10943420241288567 crossref_primary_10_2478_cait_2024_0035 crossref_primary_10_1145_3571157 |
| Cites_doi | 10.1137/1.9780898718003 10.1145/355791.355796 10.1145/1089014.1089021 10.1137/18M1189348 10.1109/IPDPS.2019.00012 10.1109/IPDPS.2017.112 10.1145/779359.779361 10.1137/1.9780898719918 10.1137/1.9781611972740.43 10.6028/NIST.IR.5935 10.1145/2049662.2049663 10.1109/IPDPS.2017.85 10.1137/1.9781611976137.5 10.1109/HPEC.2016.7761646 10.1109/IPDPS.2017.76 10.1109/IPDPS.2016.103 10.1016/j.parco.2019.102545 10.1145/2966884.2966919 10.1109/IPDPS.2008.4536313 10.1137/110848244 10.1016/0196-6774(82)90008-6 10.1145/2930660 10.1145/2567948.2576928 10.1145/3322125 10.1109/ICPP.2017.19 10.1109/IPDPS47924.2020.00022 10.1093/nar/gkx1313 10.1137/090769156 10.1145/3447818.3461472 10.1137/15M104253X 10.1137/17M1121378 10.1016/j.parco.2016.05.007 10.1016/S0021-9800(70)80014-X 10.1109/IPDPS.2014.47 10.1177/1094342011403516 |
| ContentType | Journal Article |
| Copyright | Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2022 |
| Copyright_xml | – notice: Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2022 |
| DBID | 97E RIA RIE AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D |
| DOI | 10.1109/TPDS.2021.3094091 |
| DatabaseName | IEEE Xplore (IEEE) IEEE All-Society Periodicals Package (ASPP) 1998–Present IEEE Electronic Library (IEL) CrossRef Computer and Information Systems Abstracts Electronics & Communications Abstracts Technology Research Database ProQuest Computer Science Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional |
| DatabaseTitle | CrossRef Technology Research Database Computer and Information Systems Abstracts – Academic Electronics & Communications Abstracts ProQuest Computer Science Collection Computer and Information Systems Abstracts Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Professional |
| DatabaseTitleList | Technology Research Database |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Xplore url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Engineering Computer Science |
| EISSN | 1558-2183 |
| EndPage | 1001 |
| ExternalDocumentID | 10_1109_TPDS_2021_3094091 9470983 |
| Genre | orig-research |
| GrantInformation_xml | – fundername: Exascale Computing grantid: 17-SC-20-SC – fundername: National Science Foundation grantid: CCF-1637564 funderid: 10.13039/100000001 – fundername: Advanced Scientific Computing Research grantid: DE-AC02-05CH11231 funderid: 10.13039/100006192 – fundername: U.S. Department of Energy grantid: DE-AC05-00OR22725 funderid: 10.13039/100000015 – fundername: National Science Foundation grantid: 1823034 funderid: 10.13039/100000001 – fundername: U.S. Department of Energy funderid: 10.13039/100000015 – fundername: National Nuclear Security Administration funderid: 10.13039/100006168 |
| GroupedDBID | --Z -~X .DC 0R~ 29I 4.4 5GY 6IK 97E AAJGR AARMG AASAJ AAWTH ABAZT ABQJQ ABVLG ACGFO ACIWK AENEX AGQYO AHBIQ AKJIK AKQYR ALMA_UNASSIGNED_HOLDINGS ASUFR ATWAV BEFXN BFFAM BGNUA BKEBE BPEOZ CS3 DU5 EBS EJD HZ~ IEDLZ IFIPE IPLJI JAVBF LAI M43 MS~ O9- OCL P2P PQQKQ RIA RIE RNS TN5 TWZ UHB AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D |
| ID | FETCH-LOGICAL-c293t-5323ab2975841b9b2e3bc8f129edac14b8afe42833d330cd811de45e549844933 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 29 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000707442400022&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1045-9219 |
| IngestDate | Sun Jun 29 14:27:15 EDT 2025 Tue Nov 18 21:45:11 EST 2025 Sat Nov 29 06:06:48 EST 2025 Wed Aug 27 02:26:48 EDT 2025 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 4 |
| Language | English |
| License | https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html https://doi.org/10.15223/policy-029 https://doi.org/10.15223/policy-037 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c293t-5323ab2975841b9b2e3bc8f129edac14b8afe42833d330cd811de45e549844933 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ORCID | 0000-0001-7253-9038 0000-0003-1332-8630 0000-0002-0203-0372 |
| PQID | 2582246925 |
| PQPubID | 85437 |
| PageCount | 13 |
| ParticipantIDs | proquest_journals_2582246925 ieee_primary_9470983 crossref_citationtrail_10_1109_TPDS_2021_3094091 crossref_primary_10_1109_TPDS_2021_3094091 |
| PublicationCentury | 2000 |
| PublicationDate | 2022-04-01 |
| PublicationDateYYYYMMDD | 2022-04-01 |
| PublicationDate_xml | – month: 04 year: 2022 text: 2022-04-01 day: 01 |
| PublicationDecade | 2020 |
| PublicationPlace | New York |
| PublicationPlace_xml | – name: New York |
| PublicationTitle | IEEE transactions on parallel and distributed systems |
| PublicationTitleAbbrev | TPDS |
| PublicationYear | 2022 |
| Publisher | IEEE The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Publisher_xml | – name: IEEE – name: The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| References | ref34 ref12 ref37 ref15 ref31 ref33 ref11 ref32 ref1 ref39 ref17 ref16 solomonik (ref14) 2015 ref19 hussain (ref36) 2021 balay (ref41) 2014 azad (ref38) 2018; 46 van de geijn (ref18) 1995 yang (ref13) 2019 guidi (ref10) 2021 van dongen (ref35) 2000 ref24 ref45 ref23 ref26 ref25 ref20 ref42 ref22 ref44 ref21 ref43 kollias (ref46) 0 ref28 ref27 ref29 selvitopi (ref9) 2020 ref8 ref7 buluç (ref2) 2017 ref4 ref3 ref6 gale (ref30) 2020 ref5 ref40 |
| References_xml | – year: 2000 ident: ref35 article-title: Graph clustering by flow simulation – ident: ref5 doi: 10.1137/1.9780898718003 – ident: ref26 doi: 10.1145/355791.355796 – ident: ref42 doi: 10.1145/1089014.1089021 – ident: ref17 doi: 10.1137/18M1189348 – ident: ref23 doi: 10.1109/IPDPS.2019.00012 – ident: ref27 doi: 10.1109/IPDPS.2017.112 – ident: ref44 doi: 10.1145/779359.779361 – year: 1995 ident: ref18 article-title: SUMMA: Scalable universal matrix multiplication algorithm publication-title: Tech Rep – start-page: 1 year: 2020 ident: ref30 article-title: Sparse GPU kernels for deep learning publication-title: Proc Int Conf High Perform Comput Netw Storage Anal – ident: ref15 doi: 10.1137/1.9780898719918 – ident: ref28 doi: 10.1137/1.9781611972740.43 – ident: ref34 doi: 10.6028/NIST.IR.5935 – ident: ref39 doi: 10.1145/2049662.2049663 – ident: ref8 doi: 10.1109/IPDPS.2017.85 – ident: ref37 doi: 10.1137/1.9781611976137.5 – ident: ref1 doi: 10.1109/HPEC.2016.7761646 – ident: ref25 doi: 10.1109/IPDPS.2017.76 – ident: ref7 doi: 10.1109/IPDPS.2016.103 – ident: ref24 doi: 10.1016/j.parco.2019.102545 – start-page: 517 year: 2021 ident: ref10 article-title: Parallel string graph construction and transitive reduction for de novo genome assembly publication-title: Proc IEEE Int Parallel Distrib Process Symp – ident: ref4 doi: 10.1145/2966884.2966919 – ident: ref6 doi: 10.1109/IPDPS.2008.4536313 – year: 2019 ident: ref13 article-title: GraphBLAST: A high-performance linear algebra-based graph framework on the GPU – ident: ref19 doi: 10.1137/110848244 – ident: ref43 doi: 10.1016/0196-6774(82)90008-6 – year: 0 ident: ref46 article-title: libSkylark: A framework for high-performance matrix sketching for statistical computing – ident: ref45 doi: 10.1145/2930660 – year: 2014 ident: ref41 article-title: PETSc users manual publication-title: Tech Rep ANL-95/11 - Revision 3 5 – ident: ref40 doi: 10.1145/2567948.2576928 – ident: ref12 doi: 10.1145/3322125 – ident: ref29 doi: 10.1109/ICPP.2017.19 – year: 2015 ident: ref14 article-title: Sparse tensor algebra as a parallel programming model – ident: ref33 doi: 10.1109/IPDPS47924.2020.00022 – volume: 46 year: 2018 ident: ref38 article-title: HipMCL: A high-performance parallel implementation of the Markov clustering algorithm for large-scale networks publication-title: Nucleic Acids Res doi: 10.1093/nar/gkx1313 – start-page: 643 year: 2017 ident: ref2 article-title: Design of the GraphBLAS API for C publication-title: Proc IEEE Int Parallel Distrib Process Symp Workshops – ident: ref21 doi: 10.1137/090769156 – ident: ref16 doi: 10.1145/3447818.3461472 – start-page: 1 year: 2020 ident: ref9 article-title: Distributed many-to-many protein sequence alignment using sparse matrices publication-title: Proc Int Conf High Perform Comput Netw Storage Anal – ident: ref20 doi: 10.1137/15M104253X – ident: ref31 doi: 10.1137/17M1121378 – ident: ref22 doi: 10.1016/j.parco.2016.05.007 – ident: ref11 doi: 10.1016/S0021-9800(70)80014-X – start-page: 90 year: 2021 ident: ref36 article-title: Communication-avoiding and memory-constrained sparse matrix-matrix multiplication at extreme scale publication-title: Proc IEEE Int Parallel Distrib Process Symp – ident: ref32 doi: 10.1109/IPDPS.2014.47 – ident: ref3 doi: 10.1177/1094342011403516 |
| SSID | ssj0014504 |
| Score | 2.5180843 |
| Snippet | Combinatorial algorithms such as those that arise in graph analysis, modeling of discrete systems, bioinformatics, and chemistry, are often hard to... |
| SourceID | proquest crossref ieee |
| SourceType | Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 989 |
| SubjectTerms | Algorithms Bioinformatics Combinatorial analysis combinatorics communication-avoidance algorithms Computational modeling Data analysis Data structures Discrete systems Distributed memory graph theory Indexes Libraries parallel computing Parallel processing Sparse matrices Three-dimensional displays |
| Title | Combinatorial BLAS 2.0: Scaling Combinatorial Algorithms on Distributed-Memory Systems |
| URI | https://ieeexplore.ieee.org/document/9470983 https://www.proquest.com/docview/2582246925 |
| Volume | 33 |
| WOSCitedRecordID | wos000707442400022&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVIEE databaseName: IEEE Xplore customDbUrl: eissn: 1558-2183 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0014504 issn: 1045-9219 databaseCode: RIE dateStart: 19900101 isFulltext: true titleUrlDefault: https://ieeexplore.ieee.org/ providerName: IEEE |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEB6seNCDryrWFzl4ErfdbLLdxFt94UFLwQe9LZtkVoW6FVsF_71JmhZFEbwFdsIu-yU7mZ2Z7wM40KgkLbGMsG1ExLXFQikqI9bOMplQVsRMe7GJrNsV_b7szcHRrBcGEX3xGTbd0OfyzVC_uV9lLcmzWApWg1qWZZNerVnGgKdeKtBGF2lkbyJDBpPGsnXbO7uxkWBCm8yxxUn6zQd5UZUfX2LvXi5W_vdgq7AcjpGkM8F9DeawWoeVqUQDCTt2HZa-8A3W4d4a2EjYxdl22ZGTq84NSZrxsbUvXFs6-X69M3iwg_Hj84gMK3LmKHadOhaa6NrV536QQHe-AXcX57enl1EQVoi09e7jKGUJK5TrqRWcKqkSZEqL0rp-NIWmXImiRMfExgxjsTaCUoM8RRtLCs4lY5swXw0r3AJirSUtkFG0BysWG9XOdFkWnApFDVfYgHj6qnMdWMed-MUg99FHLHOHTu7QyQM6DTicTXmZUG78ZVx3cMwMAxIN2J3imYdNOcqT1JXMtmWSbv8-awcWE9fd4AtzdmF-_PqGe7Cg38dPo9d9v94-AbXn0cw |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3fT9swED4xmDT2MLYWRBlsfuBpWkr8I43NW0dBTLRVpXZT36LYvgAStIiWSfvvZ7tutWoIaW-WclaifHbOl7v7PoBjg1rRCqsEW1YmwjgstKYq4a08V4zyMuUmiE3k_b4cj9VgA76uemEQMRSfYdMPQy7fTs2T_1V2okSeKslfwVYmBKOLbq1VzkBkQSzQxRdZ4m6jYg6TpupkNOgMXSzIaJN7vjhF17xQkFX551scHMzFzv892nt4Fw-SpL1A_gNs4KQGO0uRBhL3bA3e_sU4WIefzsDFwj7SdguPfOu2h4Q101NnX_rGdLJ-vX137Qbzm_sZmU5Ix5Psen0stEnPV-j-JpHwfBd-XJyPzi6TKK2QGOff50nGGS-176qVgmqlGXJtZOWcP9rSUKFlWaHnYuOW89RYSalFkaGLJqUQivM92JxMJ7gPxFkrWiKn6I5WPLW6lZuqKgWVmlqhsQHp8lUXJvKOe_mLuyLEH6kqPDqFR6eI6DTgy2rKw4J04yXjuodjZRiRaMDhEs8ibstZwTJfNNtSLDt4ftZneHM56nWL7vf-1UfYZr7XIZTpHMLm_PEJj-C1-TW_nT1-CmvvD8mu1RM |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Combinatorial+BLAS+2.0%3A+Scaling+Combinatorial+Algorithms+on+Distributed-Memory+Systems&rft.jtitle=IEEE+transactions+on+parallel+and+distributed+systems&rft.au=Azad%2C+Ariful&rft.au=Selvitopi%2C+Oguz&rft.au=Hussain%2C+Md+Taufique&rft.au=Gilbert%2C+John+R.&rft.date=2022-04-01&rft.issn=1045-9219&rft.eissn=1558-2183&rft.volume=33&rft.issue=4&rft.spage=989&rft.epage=1001&rft_id=info:doi/10.1109%2FTPDS.2021.3094091&rft.externalDBID=n%2Fa&rft.externalDocID=10_1109_TPDS_2021_3094091 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1045-9219&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1045-9219&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1045-9219&client=summon |