TY - GEN
T1 - Synthesizing parallel graph programs via automated planning
AU - Prountzos, Dimitrios
AU - Manevich, Roman
AU - Pingali, Keshav
PY - 2015/6/3
Y1 - 2015/6/3
N2 - We describe a system that uses automated planning to synthesize correct and efficient parallel graph programs from high-level algorithmic specifications. Automated planning allows us to use constraints to declaratively encode program transformations such as scheduling, implementation selection, and insertion of synchronization. Each plan emitted by the planner satisfies all constraints simultaneously, and corresponds to a composition of these transformations. In this way, we obtain an integrated compilation approach for a very challenging problem domain. We have used this system to synthesize parallel programs for four graph problems: triangle counting, maximal independent set computation, preflow-push maxflow, and connected components. Experiments on a variety of inputs show that the synthesized implementations perform competitively with hand-written, highly-tuned code. Copyright is held by the owner/author(s). Publication rights licensed to ACM.
AB - We describe a system that uses automated planning to synthesize correct and efficient parallel graph programs from high-level algorithmic specifications. Automated planning allows us to use constraints to declaratively encode program transformations such as scheduling, implementation selection, and insertion of synchronization. Each plan emitted by the planner satisfies all constraints simultaneously, and corresponds to a composition of these transformations. In this way, we obtain an integrated compilation approach for a very challenging problem domain. We have used this system to synthesize parallel programs for four graph problems: triangle counting, maximal independent set computation, preflow-push maxflow, and connected components. Experiments on a variety of inputs show that the synthesized implementations perform competitively with hand-written, highly-tuned code. Copyright is held by the owner/author(s). Publication rights licensed to ACM.
KW - Amorphous data-parallelism
KW - Compiler optimization
KW - Concurrency
KW - Irregular programs
KW - Parallelism
KW - Synthesis
UR - http://www.scopus.com/inward/record.url?scp=84951731589&partnerID=8YFLogxK
U2 - 10.1145/2737924.2737953
DO - 10.1145/2737924.2737953
M3 - Conference contribution
AN - SCOPUS:84951731589
T3 - Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
SP - 533
EP - 544
BT - PLDI 2015 - Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation
A2 - Blackburn, Steve
A2 - Grove, David
PB - Association for Computing Machinery
T2 - 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2015
Y2 - 13 June 2015 through 17 June 2015
ER -