“It Looks Like You’re Writing a Parallel Loop”: A Machine Learning Based Parallelization Assistant

Aleksandr Maramzin, Chris Vasiladiotis, Roberto Castaneda Lozano, Murray Cole, Bjoern Franke

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract / Description of output

Despite decades of research into parallelizing compiler technology, software parallelization remains a largely manual task where the key resource is expert time. In this paper we focus on the time-consuming task of identifying those loops in a program, which are both worthwhile and feasible to parallelize. We present a methodology and tool which make better use of expert time by guiding their effort directly towards those loops, where the largest performance gains can be expected while keeping analysis and transformation effort at a minimum.

We have developed a novel parallelization assistant that provides programmers with a ranking of all loops in a program based on their overall merit. For each loop this metric combines its potential contribution to speedup and an estimated probability for its successful parallelization. This probability is predicted using a machine learning model, which has been trained, validated, and tested on 1415 labelled loops, achieving a prediction accuracy greater than 90%.

We have evaluated our parallelization assistant against sequential C applications from the SNU NAS benchmark suite. We show that our novel methodology achieves parallel performance levels comparable to those from expert programmers while requiring less expert time. On average, our assistant reduces the number of lines of code that have to be inspected manually before reaching expert-level parallel speedup by 20%.
Original languageEnglish
Title of host publicationAI-SEPS 2019 Proceedings of the 6th ACM SIGPLAN International Workshop on Artificial Intelligence and Empirical Methods for Software Engineering and Parallel Computing Systems
PublisherACM
Pages1-10
Number of pages10
ISBN (Electronic) 978-1-4503-6983-1
DOIs
Publication statusPublished - 22 Oct 2019
Event6th ACM SIGPLAN International Workshop on AI-Inspired and Empirical Methods for Software Engineering on Parallel Computing Systems (AI-SEPS) - Athens, Greece
Duration: 20 Oct 201925 Oct 2019
https://conf.researchr.org/home/seps-2019

Conference

Conference6th ACM SIGPLAN International Workshop on AI-Inspired and Empirical Methods for Software Engineering on Parallel Computing Systems (AI-SEPS)
Abbreviated titleAI-SEPS 2019
Country/TerritoryGreece
CityAthens
Period20/10/1925/10/19
Internet address

Fingerprint

Dive into the research topics of '“It Looks Like You’re Writing a Parallel Loop”: A Machine Learning Based Parallelization Assistant'. Together they form a unique fingerprint.

Cite this