BACKUS: Comprehensive High-Performance Research Software Engineering Approach for Simulations in Supercomputing Systems

10/14/2019
by   Matan Rusanovsky, et al.
0

High-Performance Computing (HPC) platforms enable scientific software to achieve breakthroughs in many research fields such as physics, biology, and chemistry, by employing Research Software Engineering (RSE) techniques. These include 1) novel parallelism paradigms such as Shared Memory Parallelism (with e.g. OpenMP 4.5); Distributed Memory Parallelism (with e.g. MPI 4); Hybrid Parallelism which combines them; and Heterogeneous Parallelism (for CPUs, co-processors and accelerators), 2) introducing advanced Software Engineering concepts such as Object Oriented Parallel Programming (OOPP); Parallel Unit testing; Parallel I/O Formats; Hybrid Parallel Visualization; and 3) Selecting the Best Practices in other necessary areas such as User Interface; Automatic Documentation; Version Control and Project Management. In this work we present BACKUS: Comprehensive High-Performance Research Software Engineering Approach for Simulations in Supercomputing Systems, which we found to fit best for long-lived parallel scientific codes.

READ FULL TEXT
research
07/21/2023

Software engineering to sustain a high-performance computing scientific application: QMCPACK

We provide an overview of the software engineering efforts and their imp...
research
10/27/2020

A GPU-accelerated adaptive FSAI preconditioner for massively parallel simulations

The solution of linear systems of equations is a central task in a numbe...
research
11/11/2019

MOOSE: Enabling Massively Parallel Multiphysics Simulation

Harnessing modern parallel computing resources to achieve complex multi-...
research
11/13/2017

ABCpy: A High-Performance Computing Perspective to Approximate Bayesian Computation

ABCpy is a highly modular scientific library for Approximate Bayesian Co...
research
02/05/2019

Etude de la Distribution de Calculs Creux sur une Grappe Multi-coeurs

Nowadays, high performance computing is becoming more and more important...
research
01/20/2020

The Parallelism Motifs of Genomic Data Analysis

Genomic data sets are growing dramatically as the cost of sequencing con...
research
02/18/2022

Uniting Control and Data Parallelism: Towards Scalable Memory-Driven Dynamic Graph Processing

Control parallelism and data parallelism is mostly reasoned and optimize...

Please sign up or login with your details

Forgot password? Click here to reset