Research indexJournal article
An array API for finite difference methods
Burrows, Friis, Haveraaen
7 Jun 2018
An array API for finite difference methods
Burrows, Friis, Haveraaen · 2018 · Subscription
The full text is at the publisher
You can read the abstract here, or open it at the publisher.
Abstract
As we move towards exascale computing, computer architecture is bound to see dramatic changes. Multiple nodes, with or without shared memory, multicore and accelerators (GPUs, FPGAs) will be the norm. For many domains, such as finite difference numerical simulations, the array used to represent a perfect match between the user level code and the hardware architecture’s uniform memory access, well supported by programming languages and compilers. Facing the exascale challenge, we propose replacing the compiler supported array by an array API, empowering the software developer to implement their own array-memory layout. Application code written towards such an API will be independent of underlying architecture changes, thus easily ported between architectures. Here we demonstrate the viability of this approach by demonstrating an array API for finite difference solvers.