Abstract

In a task parallel language like Fortran M, the programmer writes a task parallel program using parallel constructs. When some data dependencies exist between called procedures in various applications, it is difficult to write a task parallel program according to their dependencies. Therefore, it is desirable that the compiler detects some implicit parallelism and transforms a program into parallelized form. However, current task parallel language compilers cannot provide this facility. In this paper, we classify the cases according to various dependence relations. Then we suggest parallelization methods where the compiler detects the implicit parallelism for each case and transforms it into the task parallel constructs, like the PROCESSES block or PROCESSDO loop of Fortran M. We compare our methods with conventional parallelization and describe their benefits.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call