Cross-Platform OpenCL Code and Performance Portability for CPU and GPU Architectures Investigated with a Climate and Weather Physics Model
نویسندگان
چکیده
Current multiand many-core computing typically involves multi-core Central Processing Units (CPU) and many-core Graphical Processing Units (GPU) whose architectures are distinctly different. To keep longevity of application codes, it is highly desirable to have a programming paradigm to support these current and future architectures. Open Computing Language (OpenCL) is created to address this problem. While the current implementations of OpenCL compiler provide the capability to compile and run on the architectures above, most of the current researches investigate the performance of GPU’s as a compute device. In this paper we will investigate the portability of OpenCL across CPU and GPU architectures in terms of code and performance via a representative climate and weather physics model, NASA’s GEOS-5 solar radiation model, SOLAR. An OpenCL implementation portable between CPU’s and GPU’s has been obtained with significant performance improvement in some CPU’s and GPU’s. We found that OpenCL’s vector-oriented programming paradigm assists compilers with implicit vectorization and consequently significant performance gains were achieved.
منابع مشابه
Performance Portability in Accelerated Parallel Kernels
Heterogeneous architectures, by definition, include multiple processing components with very different microarchitectures and execution models. In particular, computing platforms from supercomputers to smartphones can now incorporate both CPU and GPU processors. Disparities between CPU and GPU processor architectures have naturally led to distinct programming models and development patterns for...
متن کاملScalability and Parallel Execution of OmpSs-OpenCL Tasks on Heterogeneous CPU-GPU Environment
With heterogeneous computing becoming mainstream, researchers and software vendors have been trying to exploit the best of the underlying architectures like GPUs or CPUs to enhance performance. Parallel programming models play a crucial role in achieving this enhancement. One such model is OpenCL, a parallel computing API for cross platform computations targeting heterogeneous architectures. Ho...
متن کاملGPU Based Acceleration of WRF Model: A Review
The Weather Research and Forecasting model (WRF) is a simulating system developed for atmospheric weather prediction. WRF model is used for both operational as well as research purposes. The need for accurate weather and climate simulation to be carried out in shorter time is increasing day by day, which leads to the acceleration of existing Numerical Weather Prediction (NWP) system. This paper...
متن کاملCompiler-based code generation and autotuning for geometric multigrid on GPU-accelerated supercomputers
GPUs, with their high bandwidths and computational capabilities are an increasingly popular target for scientific computing. Unfortunately, to date, harnessing the power of the GPU has required use of a GPU-specific programming model like CUDA, OpenCL, or OpenACC. As such, in order to deliver portability across CPU-based and GPU-accelerated supercomputers, programmers are forced to write and ma...
متن کاملAutomatic OpenCL Device Characterization: Guiding Optimized Kernel Design
The OpenCL standard allows targeting a large variety of CPU, GPU and accelerator architectures using a single unified programming interface and language. While the standard guarantees portability of functionality for complying applications and platforms, performance portability on such a diverse set of hardware is limited. Devices may vary significantly in memory architecture as well as type, n...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012