Mentions légales du service

Skip to content
Snippets Groups Projects
Name Last commit Last update
cuda
hip
README.md

Overview

This repository contains the source code of particle interactions on GPU, when a cutoff method is used, and when there are few particles per cell. It contains a CUDA and a HIP implementations (which are really the same). All the implementations are discussed in a paper (https://inria.hal.science/hal-04621128).

Compilation

Both implementations have a CMake. For the CUDA implementation, NVCC should be available. For the HIP implementation, we currently used to set the compiler by hand to make it works CXX=hipcc cmake .. (in the build dir).

Citing the work

Please cite the paper if you use this code, update it, or benchmark it:

Efficient GPU Implementation of Particle Interactions with Cutoff Radius and Few Particles per Cell. David Algis, Bérenger Bramas, Emmanuelle Darles, Lilian Aveneau. International Symposium on Parallel Computing and Distributed Systems (PCDS2024), IEEE, Sep 2024, Singapore, Singapore.

Relation to the paper

Here is the matching between the names in the code and the ones in the paper:

  • ComputeParticleInterationsParPartLoop: Par-Part-Loop
  • ComputeParticleInterationsParPartNoLoop: Par-Part-NoLoop
  • ComputeParticleInterationsParCell: Par-Cell
  • ComputeParticleInterationsParCellSm: Par-Cell-SM
  • ComputeParticleInterationsV1: All-in-SM (Full load)
  • ComputeParticleInterationsV2: X-pencil (Pencil load)
  • ComputeParticleInterationsV3: X-pencil-reg (Pencil/register load)