To main content

Hardware-accelerated numerics

Hardware-accelerated numerics refers to the use of specialized hardware to enhance the performance of numerical computations. Graphics processor units (GPUs) have, for instance, been used for almost two decades in scientific and engineering applications due to their parallel processing capabilities.

Contact persons

By utilizing their inherent parallel processing power, different accelerators can offer a significant increase in performance of the complex calculations that make up our simulators. Hardware-accelerated numerics entails more than just rewriting existing CPU code for accelerators; it involves identifying the most suitable type of accelerator for a particular algorithm or vice versa, selecting the modeling approach or computational algorithm that optimally aligns with a given hardware architecture.

What do we do?

Our scientists have a long tradition for utilizing emerging computer hardware in computational modelling. For instance, starting in the early 2000s, we were among the pioneers in GPU computing, using programmable graphics cards for solving systems of conservation and balance laws (see, e.g., our tutorial paper from 2007). Heterogeneous computing involves employing a combination of different types of processors, such as CPUs and GPUs, to efficiently handle diverse computational tasks. In the context of numerical simulations, hardware acceleration aims to significantly speed up complex calculations by leveraging the parallel processing power of specialized hardware components.

We are actively extending our long tradition of working with highly modern computational hardware to solve scientific problems. We are currently researching how to efficiently use GPUs for computation within reservoir simulation (e.g., the EU project ACROSS), within ocean modelling, and wihin visual computing. We also have experience in utilizing field programmable gate arrays (FPGA), mobile phone GPUs, tensor processing units (TPUs), and neural processing units (NPUs).

Software

GPU Ocean

GPU Ocean

A GPU-accelerated simulation framework for running large ensembles of simplified ocean models for real-world domains.

Jutul

Jutul

Experimental Julia framework for fully differentiable multiphysics simulators based on implicit finite-volume methods with automatic differentiation.

Projects

SWAMP: the Surface Water Analysis and Modelling Project

SWAMP: the Surface Water Analysis and Modelling Project

Start:
End:

SWAMP aims at developing open-source software for simulation and analysis of surface water caused by flooding and intense rain, and using this simulation software to make demonstrators show casing our experience and expertise.

ACROSS

ACROSS

Start:
End:

ACROSS aims to combine traditional High-Performance Computing (HPC) techniques and workflows with Artificial Intelligence (AI) and Big Data analytic techniques to enhance productivity and efficiency.