@ufxela I guess it's because compiler doesn't know about the dependency unless the program is actually being executed.
Our former president, John Hennessy mentioned once at an event I attended that the "magic parallelizing compiler" is one of the biggest challenges in systems program he has encountered in his research career. Here are some links to some of his work on the subject:
https://suif.stanford.edu/suif/suif1/suif-overview/suif.html
https://www.sciencedirect.com/science/article/abs/pii/S0743731500916393
One of the linked readings from Tuesday's lecture (the first part of Matt Pharr's blog post series on how ISPC came together) also has some interesting background on what makes this such a hard task (although it specifically deals with auto-vectorization of code by the compiler).
Please log in to leave a comment.
In class, Kayvon mentioned that the automatic decomposition problem has been researched for up to 40 years without much success. What about the problem makes it so difficult and what ideas have had the most promise so far?