AllScale toolchain pilot applications: PDE based solvers using a parallel development environment
Creators
- 1. IBM Research - Ireland
- 2. KTH
- 3. UIBK
- 4. FAU
- 5. QUB
Description
AllScale is a programming environment targeting highly scalable parallel
applications, simplifying application development in the ExaScale era by
siloing development responsibilities. The front-end AllScale API provides a simple C++
development environment and a suite of parallel constructs denoting tasks to be
operated concurrently. Lower level tasks related to the machine and system level are
managed by the AllScale toolchain at the core level. We present the development of two
large-scale parallel applications within the AllScale API, namely, an advection-
diffusion model with data assimilation and a Lagrangian space-weather simulation model
based on a particle-in-cell method. Mathematical formulations and implementations are
presented and we evaluate parallel constructs developed using the AllScale API. The
performance of the applications from the perspective of both parallel scalability and
more importantly productivity are assessed. We demonstrate how the AllScale API can
greatly improve developer productivity while maintaining parallel performance in two
distinct applications. Code complexity metrics demonstrate reduction in application
specific implementations of up to 30% while performance tests on three different
compute systems demonstrate comparable parallel scalability to an MPI version of the
code.
Files
PilotApplicationsPublication.pdf
Files
(488.3 kB)
Name | Size | Download all |
---|---|---|
md5:703f551858e866d24553c4c4106d0fd2
|
488.3 kB | Preview Download |