Automatic lock-free parallel programming on multi-core processors
Gopinath Chennupati, Raja Muhammad Atif Azad, Conor Ryan · 2016
Writing correct and efficient parallel programs is an unavoidable challenge; the challenge becomes arduous with lock-free programming. This paper presents an automated approach, Automatic Lock-free Programming (ALP) that avoids the programming difficulties via locks for an average programmer. ALP synthesizes parallel lock-free recursive programs that are directly compilable on multi-core processors. ALP attains the dual objective of evolving parallel lock-free programs and optimizing their performance. These programs perform (in terms of execution time) significantly better than that of the parallel programs with locks, while they are competitive with that of the human developed programs.