Multi-Architecture Parallel Particle Simulations on HPC Systems
Activity: Talk or presentation at external institutions/events › Talk/Presentation › Contributed
Persons and affiliations
- Pietro Incardona - , Chair of Scientific Computing for Systems Biology (Speaker)
- Ivo Fabian Sbalzarini - , Chair of Scientific Computing for Systems Biology (Involved person)
Date
13 Feb 2020
Description
Parallel numerical simulation using particles and/or meshes are common in both scientific and industrial applications. Popular numerical methods that fall into this category are Smoothed Particle Hydrodynamics (SPH), Vortex Methods (VM), Molecular Dynamics (MD), Discrete Element Methods (DEM), Finite-Difference Methods (FDM), Particle-in-Cell (PIC) codes, and Finite-Volume methods (FVM). Parallel implementation of all of these methods can be expressed as a set of common abstract data types and operators, as implemented in the OpenFPM middleware. OpenFPM is a scalable C++ framework for rapid and efficient development of particle- and particle-mesh simulations. It uses C++ Template Meta-Programming for compile-time code generation in order to allow arbitrary C++ objects to be particle or mesh node properties, and perform simulations in arbitrary-dimensional spaces. Originally developed for shared- and distributed-memory CPU computing, we here present an extension of OpenFPM to GPUs and multi-GPU setups. We demonstrate two different ways of implementing GPU computations (using kernels and using inline code) in OpenFPM without explicitly having to write any CUDA, OpenCL, or the like. This renders GPU computing much more accessible and enables rapid porting of existing CPU codes to GPUs and to using a mixture of CPU and GPU operations in a distributed environment.Conference
Title | SIAM Conference on Parallel Processing for Scientific Computing (PP20) |
---|---|
Duration | 12 - 15 February 2020 |
Degree of recognition | International event |
Location | Hyatt Regency Seattle |
City | Seattle |
Country | United States of America |