Designing OP2 for GPU architectures

M.B. Giles, G.R. Mudalige, B. Spencer, C. Bertolli, I. Reguly
Oxford e-Research Centre, University of Oxford, U.K.
Journal of Parallel and Distributed Computing, 2012


   title={Designing OP2 for GPU architectures},

   author={Giles, MB and Mudalige, GR and Spencer, B. and Bertolli, C. and Reguly, I.},

   journal={Journal of Parallel and Distributed Computing},




Download Download (PDF)   View View   Source Source   Source codes Source codes




OP2 is an "active" library framework for the solution of unstructured mesh applications. It aims to decouple the specification of a scientific application from its parallel implementation to achieve code longevity and near-optimal performance through re-targeting the back-end to different multi-core/many-core hardware. This paper presents the design of the current OP2 library for generating efficient code targeting contemporary GPU platforms. In this we focus on some of the software architecture design choices and low-level optimizations to maximize performance on NVIDIA’s Fermi architecture GPUs. The performance impact of these design choices is quantified on two NVIDIA GPUs (GTX560Ti, Tesla C2070) using the end-to-end performance of an industrial representative CFD application developed using the OP2 API. Results show that for each system, a number of key configuration parameters need to be set carefully in order to gain good performance. Utilizing a recently developed auto-tuning framework, we explore the effect of these parameters, their limitations and insights into optimizations for improved performance.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: