Show simple item record

dc.contributor.authorKaler, Timothy
dc.contributor.authorHasenplaugh, William Cleaburn
dc.contributor.authorSchardl, Tao Benjamin
dc.contributor.authorLeiserson Jr, Charles
dc.date.accessioned2018-05-16T14:23:43Z
dc.date.available2018-05-16T14:23:43Z
dc.date.issued2016-06
dc.identifier.issn2329-4949
dc.identifier.urihttp://hdl.handle.net/1721.1/115393
dc.description.abstractA data-graph computation—popularized by such programming systems as Galois, Pregel, GraphLab, PowerGraph, and GraphChi—is an algorithm that performs local updates on the vertices of a graph. During each round of a data-graph computation, an update function atomically modifies the data associated with a vertex as a function of the vertex’s prior data and that of adjacent vertices. A dynamic data-graph computation updates only an active subset of the vertices during a round, and those updates determine the set of active vertices for the next round. This article introduces Prism, a chromatic-scheduling algorithm for executing dynamic data-graph computations. Prism uses a vertex coloring of the graph to coordinate updates performed in a round, precluding the need for mutual-exclusion locks or other nondeterministic data synchronization. A multibag data structure is used by Prism to maintain a dynamic set of active vertices as an unordered set partitioned by color. We analyze Prism using work-span analysis. Let G = (V, E) be a degree-Δ graph colored with χ colors, and suppose that Q⊆V is the set of active vertices in a round. Define size(Q)= |Q| + ∑v∈ Q deg(v), which is proportional to the space required to store the vertices of Q using a sparse-graph layout. We show that a P-processor execution of Prism performs updates in Q using O(χ (lg ( Q/χ ) + lg Δ ) + lg P span and Θ(size(Q) + P) work. These theoretical guarantees are matched by good empirical performance. To isolate the effect of the scheduling algorithm on performance, we modified GraphLab to incorporate Prism and studied seven application benchmarks on a 12-core multicore machine. Prism executes the benchmarks 1.2 to 2.1 times faster than GraphLab’s nondeterministic lock-based scheduler while providing deterministic behavior. This article also presents Prism-R, a variation of Prism that executes dynamic data-graph computations deterministically even when updates modify global variables with associative operations. Prism-R satisfies the same theoretical bounds as Prism, but its implementation is more involved, incorporating a multivector data structure to maintain a deterministically ordered set of vertices partitioned by color. Despite its additional complexity, Prism-R is only marginally slower than Prism. On the seven application benchmarks studied, Prism-R incurs a 7% geometric mean overhead relative to Prism.en_US
dc.language.isoen_US
dc.publisherAssociation for Computing Machinery (ACM)en_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/2896850en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alikeen_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en_US
dc.sourceTim Kaleren_US
dc.titleExecuting Dynamic Data-Graph Computations Deterministically Using Chromatic Schedulingen_US
dc.typeArticleen_US
dc.identifier.citationKaler, Tim et al. “Executing Dynamic Data-Graph Computations Deterministically Using Chromatic Scheduling.” ACM Transactions on Parallel Computing 3, 1 (July 2016): 1–31 © Association for Computing Machineryen_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
dc.contributor.mitauthorKaler, Timothy
dc.contributor.mitauthorHasenplaugh, William Cleaburn
dc.contributor.mitauthorSchardl, Tao Benjamin
dc.contributor.mitauthorLeiserson Jr, Charles
dc.relation.journalACM Transactions on Parallel Computingen_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dspace.orderedauthorsKaler, Tim; Hasenplaugh, William; Schardl, Tao B.; Leiserson, Charles E.en_US
dspace.embargo.termsNen_US
dc.identifier.orcidhttps://orcid.org/0000-0002-3831-8255
dc.identifier.orcidhttps://orcid.org/0000-0001-6915-0216
dc.identifier.orcidhttps://orcid.org/0000-0003-0198-3283
mit.licenseOPEN_ACCESS_POLICYen_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record