12302

A Portable OpenCL Lattice Boltzmann Code for Multi- and Many-core Processor Architectures

Enrico Calore, Sebastiano Fabio Schifano, Raffaele Tripiccione
INFN, Ferrara, Italy
Procedia Computer Science, Volume 29, Pages 40-49, 2014

@article{tsotskas2014design,

   title={The Design and Implementation of a GPU-enabled Multi-objective Tabu-search Intended for Real World and High-dimensional Applications},

   author={Tsotskas, Christos and Kipouros, Timoleon and Savill, Anthony Mark},

   journal={Procedia Computer Science},

   volume={29},

   pages={2152–2161},

   year={2014},

   publisher={Elsevier}

}

Download Download (PDF)   View View   Source Source   

1109

views

The architecture of high performance computing systems is becoming more and more heterogeneous, as accelerators play an increasingly important role alongside traditional CPUs. Programming heterogeneous systems efficiently is a complex task, that often requires the use of specific programming environments. Programming frameworks supporting codes portable across different high performance architectures have recently appeared, but one must carefully assess the relative costs of portability versus computing efficiency, and find a reasonable tradeoff point. In this paper we address precisely this issue, using as test-bench a Lattice Boltzmann code implemented in OpenCL. We analyze its performance on several different state-of-the-art processors: NVIDIA GPUs and Intel Xeon-Phi many-core accelerators, as well as more traditional Ivy Bridge and Opteron multi-core commodity CPUs. We also compare with results obtained with codes specifically optimized for each of these systems. Our work shows that a properly structured OpenCL code runs on many different systems reaching performance levels close to those obtained by architecture-tuned CUDA or C codes.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors

Contact us: