NEW ORLEANS, La., Nov. 19 — At SC14, the OpenMP Architecture Review Board (ARB) announces a Code Conversion Challenge. The challenge is for users to bring in shared memory or accelerator code (C++ AMP, CUDA, OpenACC, OpenCL, …) from real applications. The ARB will then demonstrate how to write them in modern OpenMP.
The applications can be written in any parallel programming model, either shared-memory or accelerator based. The OpenMP ARB will convert the applications to OpenMP, with a focus on source to source conversion, especially of the parallel regions of interest.
The ARB aims to show that reasonable programs written in another parallel programming model (e.g., OpenCL, Co-Array-Fortran, OpenACC, CUDA, C++, C++AMP or Cilk) can be rewritten in OpenMP and thus that modern OpenMP is among the most-capable high-level parallel languages.
Submission of Applications
Applicants are welcome to submit their applications on the site https://github.com/OpenMP/Challenge. If the submitter agrees, the application will be listed on the OpenMP web site.
“We have designed modern OpenMP to be the best parallel language for the three general purpose languages C, C++ and Fortran,” said Michael Wong, OpenMP CEO. “It is a language that enables you to access all capabilities of your machine without dropping to another language. This Challenge will convince you of that or show us where we need to improve. Either way, the industry benefits.”
The OpenMP ARB has as mission to standardize directive-based multi-language high-level parallelism that is performant, productive and portable. Jointly defined by a group of major computer hardware and software vendors and major parallel computing user facilities, the OpenMP API is a portable, scalable model that gives parallel programmers a simple and flexible interface for developing parallel applications for platforms ranging from embedded systems and accelerator devices to multicore systems and shared-memory systems. The OpenMP ARB owns the OpenMP brand, oversees the OpenMP specification and produces and approves new versions of the specification. Further information can be found at http://www.openmp.org/.