Search NASA⌕ Search

DOE OSTI · 1044886

Exploiting first-class arrays in Fortran for accelerator programming

Abstract

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.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Rasmussen, Craig E, Weseloh, Wayne N, Robey, Robert W, Matthew, Sottile J, Quinlan, Daniel, Overbye, Jeffrey. 2010-12-15. Exploiting first-class arrays in Fortran for accelerator programming. https://www.osti.gov/biblio/1044886

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related reports

Design and Integration of High Precision Superconducting Magnet Power Supply Systems

This paper reviews the design and integration approach being taken to power more than 400 superconducting magnets in Electron Ion Collider (EIC) by power supplies ranging from 20V to 400V and 100A to 18kA. A major challenge is to integrate existing legacy power supplies with new high current systems and maximize performance and reduce costs. Successful implementation requires coordinated integration of power convertors, current regulation, quench protection, energy extraction, machine protection, controls and existing accelerator infrastructure.

43 PARTICLE ACCELERATORS↗

Searching for the Most Harmful Field Errors in the HSR IR Superconducting Magnets

In this project, we improve beam stability for the Electron-Ion Collider. Magnetic field errors can reduce beam stability, making it essential to identify the field errors that have the greatest impact on accelerator performance. However, this is particularly challenging because beam stability depends on the complex interactions of many magnetic field errors, resulting in a high-dimensional and nonlinear optimization problem. We determine which field errors are the most influential for the large physical aperture superconducting magnet B2PF, a critical magnet in the Interaction Region (IR) in the Hadron Storage Ring (HSR). We complete and analyze nearly 30,000 simulations on the Brookhaven National Laboratory Linux Cluster by varying 18 nonlinear magnetic field errors. We evaluate beam stability using the dynamic aperture and the tune diffusion. We identify the field errors that most strongly influence beam stability and establish quantitative field error tolerances that improve accelerator performance.

43 PARTICLE ACCELERATORS↗