TY - CHAP
T1 - Synthesis of parallel programs on multi-cores
AU - Chennupati, Gopinath
AU - Azad, R. Muhammad Atif
AU - Ryan, Conor
AU - Eidenbenz, Stephan
AU - Santhi, Nandakishore
N1 - Publisher Copyright:
© Springer International Publishing AG, part of Springer Nature 2018.
PY - 2018/1/1
Y1 - 2018/1/1
N2 - Multi-cores offer higher processing power than single core processors. However, as the number of cores available on a single processor increases, efficiently programming them becomes increasingly more complex, often to the point where the limiting factor in speeding up tasks is the software. We present Grammatical Automatic Parallel Programming (GAPP), a system that synthesizes parallel code on multi-cores using OpenMP parallelization primitives in problem-specific grammars. As a result, GAPP obviates the need for programmers to think parallel while still letting them produce parallel code. The performance of GAPP on a number of difficult proof of concept benchmarks informs further optimization of both the design of grammars and fitness function to extract further parallelism. We demonstrate an improved performance of evolving programs with controlled degree of parallelism. These programs adapt to the number of cores on which they are scheduled to execute.
AB - Multi-cores offer higher processing power than single core processors. However, as the number of cores available on a single processor increases, efficiently programming them becomes increasingly more complex, often to the point where the limiting factor in speeding up tasks is the software. We present Grammatical Automatic Parallel Programming (GAPP), a system that synthesizes parallel code on multi-cores using OpenMP parallelization primitives in problem-specific grammars. As a result, GAPP obviates the need for programmers to think parallel while still letting them produce parallel code. The performance of GAPP on a number of difficult proof of concept benchmarks informs further optimization of both the design of grammars and fitness function to extract further parallelism. We demonstrate an improved performance of evolving programs with controlled degree of parallelism. These programs adapt to the number of cores on which they are scheduled to execute.
UR - http://www.scopus.com/inward/record.url?scp=85063776899&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-78717-6_12
DO - 10.1007/978-3-319-78717-6_12
M3 - Chapter
AN - SCOPUS:85063776899
SN - 9783319787169
SP - 289
EP - 315
BT - Handbook of Grammatical Evolution
PB - Springer International Publishing
ER -