• DocumentCode
    1917922
  • Title

    Cross-Platform OpenCL Code and Performance Portability Investigated with a Climate and Weather Physics Model

  • Author

    Dong, Han ; Ghosh, Dibyajyoti ; Zafar, Fahad ; Zhou, Shujia

  • Author_Institution
    Comput. Sci. & Electr. Eng. Dept., Univ. of Maryland Baltimore County, Baltimore, MD, USA
  • fYear
    2012
  • fDate
    10-13 Sept. 2012
  • Firstpage
    126
  • Lastpage
    134
  • Abstract
    Current generation of multicore computing platforms are vastly different. Sustenance of many core applications across heterogenous platforms is a daunting task, more so when dynamic nature of the application is factored in. Open Computing Language (OpenCL) was created to address this issue. Designed to run on CPUs, GPUs, FPGAs and other platforms. OpenCL is becoming a standard for cross-platform parallel programming. While current implementations of OpenCL compiler provide the capability to compile and run on the platforms mentioned above, most of the current literatures investigate the OpenCL performance on GPUs. In a previous work, Fahad et al [1] reported how low level implicit auto vectorization capability of OpenCL allows remarkable performance optimization on CPUs. In this paper we present our investigation results on OpenCL portability across CPU and GPU platforms in terms of code and performance via a representative climate and weather physics model, NASA´s GEOS-5 solar radiation model (SOLAR). A single OpenCL implementation portable between CPUs and GPUs has been obtained. Through algorithm refactoring, OpenCL´s vector-oriented programming paradigm and implicit vectorization led to significant performance gains.
  • Keywords
    climatology; geophysics computing; graphics processing units; meteorology; multiprocessing systems; parallel programming; program compilers; solar radiation; specification languages; CPU; GPU; NASA GEOS-5 solar radiation model; Open Computing Language; OpenCL compiler; OpenCL performance; OpenCL portability; SOLAR; climate; core application; cross-platform OpenCL code; cross-platform parallel programming; heterogenous platform; multicore computing platform; performance optimization; performance portability; vector-oriented programming; vectorization; weather physics model; Arrays; Computational modeling; Graphics processing unit; Instruction sets; Kernel; Meteorology; Optimization; Multi-threaded environments; OpenCL; Parallel Applications; Vectorization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Workshops (ICPPW), 2012 41st International Conference on
  • Conference_Location
    Pittsburgh, PA
  • ISSN
    1530-2016
  • Print_ISBN
    978-1-4673-2509-7
  • Type

    conf

  • DOI
    10.1109/ICPPW.2012.19
  • Filename
    6337471