Engineering a Distributed-Memory Triangle Counting Algorithm

Counting triangles in a graph and incident to each vertex is a fundamental and frequently considered task of graph analysis. We consider how to efficiently do this for huge graphs using massively parallel distributed-memory machines. Unsurprisingly, the main issue is to reduce communication between...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Proceedings - IEEE International Parallel and Distributed Processing Symposium s. 702 - 712
Hlavní autoři: Sanders, Peter, Uhl, Tim Niklas
Médium: Konferenční příspěvek
Jazyk:angličtina
Vydáno: IEEE 01.05.2023
Témata:
ISSN:1530-2075
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract Counting triangles in a graph and incident to each vertex is a fundamental and frequently considered task of graph analysis. We consider how to efficiently do this for huge graphs using massively parallel distributed-memory machines. Unsurprisingly, the main issue is to reduce communication between processors. We achieve this by counting locally whenever possible and reducing the amount of information that needs to be sent in order to handle (possible) nonlocal triangles. We also achieve linear memory requirements despite superlinear communication volume by introducing a new asynchronous sparse-all-to-all operation. Furthermore, we dramatically reduce startup overheads by allowing this communication to use indirect routing. Our algorithms scale (at least) up to 32 768 cores and are up to 18 times faster than the previous state of the art.
AbstractList Counting triangles in a graph and incident to each vertex is a fundamental and frequently considered task of graph analysis. We consider how to efficiently do this for huge graphs using massively parallel distributed-memory machines. Unsurprisingly, the main issue is to reduce communication between processors. We achieve this by counting locally whenever possible and reducing the amount of information that needs to be sent in order to handle (possible) nonlocal triangles. We also achieve linear memory requirements despite superlinear communication volume by introducing a new asynchronous sparse-all-to-all operation. Furthermore, we dramatically reduce startup overheads by allowing this communication to use indirect routing. Our algorithms scale (at least) up to 32 768 cores and are up to 18 times faster than the previous state of the art.
Author Uhl, Tim Niklas
Sanders, Peter
Author_xml – sequence: 1
  givenname: Peter
  surname: Sanders
  fullname: Sanders, Peter
  email: sanders@kit.edu
  organization: Karlsruhe Institute of Technology,Institute of Theoretical Informatics,Karlsruhe,Germany
– sequence: 2
  givenname: Tim Niklas
  surname: Uhl
  fullname: Uhl, Tim Niklas
  email: uhl@kit.edu
  organization: Karlsruhe Institute of Technology,Institute of Theoretical Informatics,Karlsruhe,Germany
BookMark eNotzM1Kw0AUQOFRFGxr30AhL5B45y8zF9yUtGqhYsG6LpPmThxpJjJJF317EV2dzceZsqvYR2LsnkPBOeDDervcvmuFGgsBQhYAYMoLNkeDVmqQ0pSluGQTriXkAoy-YdNh-AIQIBVO2OMqtiESpRDbzGXLMIwp1KeRmvyVuj6ds10KLrZHyqr-FMdftji2fQrjZ3fLrr07DjT_74x9PK121Uu-eXteV4tNHgSoMeelQu65clZh3dSNEI2qrSSwGrky3rhaekLXWLJKl1J4f_CI_OAMGdBWztjd3zcQ0f47hc6l854DN0ZxlD-7xUsf
CODEN IEEPAD
ContentType Conference Proceeding
DBID 6IE
6IL
CBEJK
RIE
RIL
DOI 10.1109/IPDPS54959.2023.00076
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP All) 1998-Present
DatabaseTitleList
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 9798350337662
EISSN 1530-2075
EndPage 712
ExternalDocumentID 10177419
Genre orig-research
GrantInformation_xml – fundername: European Research Council
  funderid: 10.13039/501100000781
GroupedDBID 29O
6IE
6IF
6IH
6IK
6IL
6IN
AAJGR
AAWTH
ABLEC
ADZIZ
ALMA_UNASSIGNED_HOLDINGS
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CBEJK
CHZPO
IEGSK
IPLJI
OCL
RIE
RIL
ID FETCH-LOGICAL-i204t-16491f14a849bdbd22d4b83e0859147f7ab3fe9ad8e845632ffcf991ca7e70583
IEDL.DBID RIE
ISICitedReferencesCount 3
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001035517300067&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
IngestDate Wed Aug 27 02:11:45 EDT 2025
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-i204t-16491f14a849bdbd22d4b83e0859147f7ab3fe9ad8e845632ffcf991ca7e70583
PageCount 11
ParticipantIDs ieee_primary_10177419
PublicationCentury 2000
PublicationDate 2023-May
PublicationDateYYYYMMDD 2023-05-01
PublicationDate_xml – month: 05
  year: 2023
  text: 2023-May
PublicationDecade 2020
PublicationTitle Proceedings - IEEE International Parallel and Distributed Processing Symposium
PublicationTitleAbbrev IPDPS
PublicationYear 2023
Publisher IEEE
Publisher_xml – name: IEEE
SSID ssj0020349
Score 1.9001405
Snippet Counting triangles in a graph and incident to each vertex is a fundamental and frequently considered task of graph analysis. We consider how to efficiently do...
SourceID ieee
SourceType Publisher
StartPage 702
SubjectTerms clustering coefficient
Distributed processing
distributed-memory algorithm
graph analysis
Memory management
MPI
Program processors
Routing
Task analysis
triangle counting
Title Engineering a Distributed-Memory Triangle Counting Algorithm
URI https://ieeexplore.ieee.org/document/10177419
WOSCitedRecordID wos001035517300067&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
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEA62ePBUHxXf5OA1djfJkgS8SGtR0LJghd5KHpNaqFupW8F_b7Ld1l48eAu5BCYzzEwy3_chdG2tVIYqT5QXEBqUzBCjZUokY07ZLGNcVzyzT2IwkKORymuweoWFAYBq-Axu4rL6y3dzu4xPZZ3oPiEDqgZqCCFWYK1NdxWJVmqITpqozmPey19C85NFNAqNNKZJ5BXZklCpMki_9c-z91H7F4uH802WOUA7UByi1lqMAdexeYRut5gFsca9SIgbtazAkec4TfuNh8HXiskMcLfWh8B3s8l8MS3f3tvotX8_7D6QWhqBTGnCSxKaHJX6lGvJlXHGUeq4kQwiXVnKhRfaMA9KOwkylEiMem99KAWtFiCSTLJj1CzmBZwgrF0WSjpwyoPniRdKUx2qAhMiW5qQvE9RO1pj_LFivxivDXH2x_452osGXw0FXqBmuVjCJdq1X-X0c3FV3dkPUQuYOQ
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1NTwIxEJ0omugJPzB-24PXld1uN9smXgxIIALZREy4kXY7RRJYDC4m_nvbZUEuHrw1vTSZzmRm2nnvAdynKReKCuMJE6NtUCLlKckDj4ehFmkUhUwWPLPduN_nw6FISrB6gYVBxGL4DB_csvjL1_N06Z7K6s59bAYUu7AXMUaDFVxr0185qpUSpBP4ot5JmsmrbX8ih0ehjsjUd8wiWyIqRQ5pVf95-hHUftF4JNnkmWPYwewEqms5BlJG5yk8bnELEkmajhLXqVmh9npunvabDKy3ZeMpkkapEEGepuP5YpK_z2rw1noeNNpeKY7gTajPcs-2OSIwAZOcCaWVplQzxUN0hGUBi00sVWhQSM2R2yIppMakxhaDqYwx9iMenkElm2d4DkTqyBZ1qIVBw3wTC0mlrQuUjW2ubPq-gJqzxuhjxX8xWhvi8o_9OzhoD3rdUbfTf7mCQ2f81YjgNVTyxRJvYD_9yiefi9vi_n4AbVWbgA
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%3Abook&rft.genre=proceeding&rft.title=Proceedings+-+IEEE+International+Parallel+and+Distributed+Processing+Symposium&rft.atitle=Engineering+a+Distributed-Memory+Triangle+Counting+Algorithm&rft.au=Sanders%2C+Peter&rft.au=Uhl%2C+Tim+Niklas&rft.date=2023-05-01&rft.pub=IEEE&rft.eissn=1530-2075&rft.spage=702&rft.epage=712&rft_id=info:doi/10.1109%2FIPDPS54959.2023.00076&rft.externalDocID=10177419