Automatic Parallelization of Programming Languages: Past, Present and Future

Wolfram Schulte, Nikolai Tillmann

International Workshop on Multicore Software Engineering |

Automatic parallelization of modern object-oriented languages, like Java, C#, Python or JavaScript, is considered to be a grand challenge. But what is the challenge exactly? Let us simplify the discussion by focusing on loop parallelization only. As usual loop parallelization requires answering two questions: (1) is it worthwhile to parallelize a loop? (2) is it safe to parallelize a loop?