A comparison of CUDA and OpenACC: Accelerating the Tsunami Simulation EasyWave

Konferenz: ARCS 2014 - 27th International Conference on Architecture of Computing Systems
25.02.2014 - 28.02.2014 in Luebeck, Deutschland

Tagungsband: ARCS 2014

Seiten: 5Sprache: EnglischTyp: PDF

Persönliche VDE-Mitglieder erhalten auf diesen Artikel 10% Rabatt

Autoren:
Christgau, Steffen; Spazier, Johannes; Schnor, Bettina (Institute of Computer Science, University of Potsdam, August-Bebel-Straße 89, 14482 Potsdam, Germany)
Hammitzsch, Martin; Babeyko, Andrey; Waechter, Joachim (GFZ German Research Centre for Geosciences, Telegrafenberg, 14473 Potsdam, Germany)

Inhalt:
This paper presents an GPU accelerated version of the tsunami simulation EasyWave. Using two different GPU generations (Nvidia Tesla and Fermi) different optimization techniques were applied to the application following the principle of locality. Their performance impact was analyzed for both hardware generations. The Fermi GPU not only has more cores, but also possesses a L2 cache shared by all streaming multiprocessors. It is revealed that even the most tuned code on the Tesla does not reach the performance of the unoptimized code on the Fermi GPU. Further, a comparison between CUDA and OpenACC shows that the platform independent approach does not reach the speed of the native CUDA code. A deeper analysis shows that memory access patterns have a critical impact on the compute kernels’ performance, although this seems to be caused by the compiler in use.