In this work we directly evaluate several emerging parallel programming models: Kokkos, RAJA, OpenACC, and OpenMP 4.0, against the mature CUDA and OpenCL APIs. Each model has been used to port TeaLeaf, a miniature proxy application, or miniapp, that solves the heat conduction equation, and belongs to the Mantevo suite of applications. We find that the best performance is achieved with device-tuned implementations but that, in many cases, the performance portable models are able to solve the same problems to within a 5-20% performance penalty. The models expose varying levels of complexity to the developer, and they all present reasonable performance. We believe that complexity will become the major influencer in the long-term adoption of such models.
CITATION STYLE
Martineau, M., McIntosh-Smith, S., Boulton, M., & Gaudin, W. (2016). An evaluation of emerging many-core parallel programming models. In Proceedings of the 7th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2016 (pp. 1–10). Association for Computing Machinery, Inc. https://doi.org/10.1145/2883404.2883420
Mendeley helps you to discover research relevant for your work.