Par4All aims to do “source to source” conversion of your code from Fortran or C to forms suitable for several parallel programming platforms like CUDA, OpenCL, MPI, and more.

The interest of the source-to-source approach is to capitalize on the real value of an application (its source!) and generating other sources that can be used by the better back-ends available: optimized compilers for a given processor, vendor compilers for embedded processors, CUDA or OpenCL for GPU, OpenMP, MPI… One source, run everywhere!

Supports C99 and Fortran 95, and a wide variety of platforms. Get full details, and the software, at their site.

Par4All.