PPIG 2020 - 31st Annual Workshop
Parallel Program Comprehension
Eric Aubanel
Abstract: Parallel programming keeps growing in importance, driven both by changes in hardware and the increasing size of data sets. Hundreds of parallel languages have been proposed, but very few have taken hold beyond the language developers themselves. One reason for this is usability - that is the degree of ease with which one can develop and maintain parallel programs that are both correct and reach the desired level of performance. The few studies of parallel language usability have not been informed by a theoretical framework. Existing theoretical models of program comprehension need to be extended to parallel programming to help address the challenges of developing new languages, programming frameworks, development tools, and pedagogy. The contribution of this article is to motivate research on parallel program comprehension, and to suggest a way forward by expanding the two-level program/situation model of program comprehension to include a model of program execution and by applying the extensive work on human reasoning by Johnson-Laird to understand how people reason about parallel programs.