Exploiting first-class arrays in Fortran for accelerator programming
Conference
·
OSTI ID:1044886
- Los Alamos National Laboratory
- GALORIS, INC.
- LLNL
- INDIANA UNIV.
Emerging architectures for high performance computing often are well suited to a data parallel programming model. This paper presents a simple programming methodology based on existing languages and compiler tools that allows programmers to take advantage of these systems. We will work with the array features of Fortran 90 to show how this infrequently exploited, standardized language feature is easily transformed to lower level accelerator code. Our transformations are based on a mapping from Fortran 90 to C++ code with OpenCL extensions. The sheer complexity of programming for clusters of many or multi-core processors with tens of millions threads of execution make the simplicity of the data parallel model attractive. Furthermore, the increasing complexity of todays applications (especially when convolved with the increasing complexity of the hardware) and the need for portability across hardware architectures make a higher-level and simpler programming model like data parallel attractive. The goal of this work has been to exploit source-to-source transformations that allow programmers to develop and maintain programs at a high-level of abstraction, without coding to a specific hardware architecture. Furthermore these transformations allow multiple hardware architectures to be targeted without changing the high-level source. It also removes the necessity for application programmers to understand details of the accelerator architecture or to know OpenCL.
- Research Organization:
- Los Alamos National Laboratory (LANL)
- Sponsoring Organization:
- DOE
- DOE Contract Number:
- AC52-06NA25396
- OSTI ID:
- 1044886
- Report Number(s):
- LA-UR-10-08340; LA-UR-10-8340
- Country of Publication:
- United States
- Language:
- English
Similar Records
A Programmable Preprocessor for Parallelizing Fortran-90
Evaluation of the OpenCL AES Kernel using the Intel FPGA SDK for OpenCL
CHASM : Static Analysis and Automatic Code Generation for Improved Fortran 90 and C++ Interoperability /
Conference
·
Thu Jul 01 00:00:00 EDT 1999
·
OSTI ID:15001833
Evaluation of the OpenCL AES Kernel using the Intel FPGA SDK for OpenCL
Technical Report
·
Thu Apr 20 00:00:00 EDT 2017
·
OSTI ID:1357909
CHASM : Static Analysis and Automatic Code Generation for Improved Fortran 90 and C++ Interoperability /
Conference
·
Sun Dec 31 23:00:00 EST 2000
·
OSTI ID:975726