Sciweavers

ASPLOS
2015
ACM

Kinetic Dependence Graphs

7 years 11 months ago
Kinetic Dependence Graphs
Task graphs or dependence graphs are used in runtime systems to schedule tasks for parallel execution. In problem domains such as dense linear algebra and signal processing, dependence graphs can be generated from a program by static analysis. However, in emerging problem domains such as graph analytics, the set of tasks and dependences between tasks in a program are complex functions of runtime values and cannot be determined statically. In this paper, we introduce a novel approach for exploiting parallelism in such programs. This approach is based on a data structure called the kinetic dependence graph (KDG), which consists of a dependence graph together with update rules that incrementally update the graph to reflect changes in the dependence structure whenever a task is completed. We have implemented a simple programming model that allows programmers to write these applications at a high level of abstraction, and a runtime within the Galois system [15] that builds the KDG automat...
Muhammad Amber Hassaan, Donald D. Nguyen, Keshav P
Added 16 Apr 2016
Updated 16 Apr 2016
Type Journal
Year 2015
Where ASPLOS
Authors Muhammad Amber Hassaan, Donald D. Nguyen, Keshav Pingali
Comments (0)