Install the GPU module 
  Chrono::Gpu is an optional module that enables a GPU solver specialized for simulating large systems of granular materials with a penalty-based Discrete Element Method.
Features
The GPU module allows users to construct a dynamic system consisting of spherical elements
Here are the main features:
- a variety of friction models- frictionless (optimized)
- single-step pseudo history
- multi-step history tracking
 
- a variety of explicit time integrators- forward Euler
- extended Taylor
- centered difference
- Chung
 
- single-GPU scaling up to 700 million frictionless elements or 200 million full-history frictional elements
- triangular meshes (objformat) in order to facilitate co-simulation with a more full-featured solver (such as the ChSystem)
Requirements
- To build applications based on this module you must have CUDA installed
- To run applications based on this module you need- an NVIDIA GPU
- Linux or Windows
 
- This module has been build/tested on both Windows 11 and Linux (Ubuntu 22.04, Fedora 40, and Arch Linux) with CUDA 12.3 and 12.8.
Building instructions
- Repeat the instructions for the full installation, but when you see the CMake window, you must add the following steps:
- Set the CH_ENABLE_MODULE_GPUas 'on', then press 'Configure' (to refresh the variable list)
- Press 'Configure' again, then 'Generate', and proceed as usual in the installation instructions.
How to use it
- Look at the API section of this module for documentation about classes and functions.
- Look at the C++ source of demos to learn how to use the functions of this module.
MacOS support
This module cannot be built for MacOS, Nvidia GPU hardware and CUDA are unsupported.
