ABSTRACT
FLEXPART is a popular simulator that models the transport and diffusion of air pollutants, based on the Lagrangian approach. It is capable of regional and global simulation and supports both forward and backward runs. A complex model like this contains many calculations suitable for parallelisation. Recently, a GPU-accelerated version of the simulator (FLEXCPP) has been written in C++/CUDA. As CUDA is only supported on NVIDIA GPUs, such an implementation is tied to a single hardware vendor, and is not able to take advantage of other hardware acceleration platforms.
This paper presents an OpenCL/C++ version of FLEXCPP, called FlexOcl. This simulator provides all the functionality of FLEXCPP, and has been extended to include modelling of the decay of radioactive particles. A performance comparison between the two simulators has been performed on GPU, and the performance of FlexOcl has also been evaluated on the Intel Xeon Phi, as well as a number of other hardware platforms. Our results show that the OpenCL code performs better than CUDA code on GPUs, and that equivalent performance is seen on the Xeon Phi for this type of application.
- D. Arnold et al. Lagrangian modeling of the atmosphere, chapter Lagrangian Models for Nuclear Studies: Examples and Applications. Volume 200 of {9}, 2013.Google Scholar
- B. Chapman, G. Jost, and R. Van Der Pas. Using OpenMP: portable shared memory parallel programming, volume 10. MIT press, 2008. Google ScholarDigital Library
- T. Czajkowski, U. Aydonat, D. Denisenko, J. Freeman, M. Kinsner, D. Neto, J. Wong, P. Yiannacouras, and D. Singh. From opencl to high-performance hardware on fpgas. In Field Programmable Logic and Applications (FPL), 2012 22nd International Conference on, pages 531--534, Aug 2012.Google ScholarCross Ref
- R. P. Denlinger et al. Lagrangian modeling of the atmosphere, chapter A Bayesian Method to Rank Different Model Forecasts of the Same Volcanic Ash Cloud. Volume 200 of {9}, 2013.Google Scholar
- S. W. N. fand Saji N. Hameed and W. Vanderbauwhede. A reconfigurable vector instruction processor for accelerating a convection parametrization model on fpgas. Poster Session 1, June 2014.Google Scholar
- J. Fang, A. L. Varbanescu, and H. Sips. A comprehensive performance comparison of cuda and opencl. In Proceedings of the 2011 International Conference on Parallel Processing, ICPP '11, pages 216--225, Washington, DC, USA, 2011. IEEE Computer Society. Google ScholarDigital Library
- D. Folini, S. Ubl, and P. Kaufmann. Lagrangian particle dispersion modeling for the high alpine site jungfraujoch. Journal of Geophysical Research: Atmospheres, 113(D18):n/a--n/a, 2008.Google Scholar
- J. Jeffers and J. Reinders. Intel Xeon Phi Coprocessor High Performance Programming. Newnes, 2013. Google ScholarDigital Library
- J. Lin. Lagrangian modeling of the atmosphere, volume 200. John Wiley & Sons, 2013.Google Scholar
- A. Munshi et al. The opencl specification. Khronos OpenCL Working Group, 1:l1--15, 2009.Google Scholar
- J. Sanders and E. Kandrot. CUDA by example: an introduction to general-purpose GPU programming. Addison-Wesley Professional, 2010. Google ScholarDigital Library
- A. Stohl, C. Forster, A. Frank, P. Seibert, and G. Wotawa. Technical note: The lagrangian particle dispersion model expart version 6.2. Atmospheric Chemistry and Physics, 5(9):2461--2474, 2005.Google ScholarCross Ref
- D. J. Thomson and J. D. Wilson. Lagrangian modeling of the atmosphere, chapter History of Lagrangian Stochastic Models for Turbulent Dispersion. Volume 200 of {9}, 2013.Google Scholar
- G. Tinarelli et al. Assessment of pollution impact over Turin suburban area using integrated method. In C. Borrego and G. Schayes, editors, Air Pollution Modelling and Its Applications, volume XV. Kluwer Acad., New York, 2001.Google Scholar
- J. Zeng et al. Lagrangian modeling of the atmosphere, chapter Linking Carbon Dioxide Variability at Hateruma Station to East Asia Emissions by Bayesian Inversion. Volume 200 of {9}, 2013.Google Scholar
- J. Zeng, T. Matsunaga, and H. Muka. Using nvidia gpu for modelling the lagrangian particle dispersion in the atmosphere. In International Environmental Modelling and Software Society (iEMSs), 2010.Google Scholar
Index Terms
- Accelerating Lagrangian particle dispersion in the atmosphere with OpenCL across multiple platforms
Recommendations
Performance Tuning of Matrix Multiplication in OpenCL on Different GPUs and CPUs
SCC '12: Proceedings of the 2012 SC Companion: High Performance Computing, Networking Storage and AnalysisOpenCL (Open Computing Language) is a framework for general-purpose parallel programming. Programs written in OpenCL are functionally portable across multiple processors including CPUs, GPUs, and also FPGAs. Using an auto-tuning technique makes ...
An OpenCL micro-benchmark suite for GPUs and CPUs
Open computing language (OpenCL) is a new industry standard for task-parallel and data-parallel heterogeneous computing on a variety of modern CPUs, GPUs, DSPs, and other microprocessor designs. OpenCL is vendor independent and hence not specialized for ...
Accelerating tandem MS protein database searches using OpenCL
ECMLS '12: Proceedings of the 3rd international workshop on Emerging computational methods for the life sciencesGPUs and multicore processors are now pervasive in com- putational sciences and high-performance computing. Their high arithmetic throughput and memory bandwidth com- bined with their ever increasing programmability make them suitable for a widening ...
Comments