MIKE Zero Flexible Mesh can currently only utilize GPU cards for numerically intensive hydrodynamic calculations using shallow water equations (including temperature and salinity calculations and second order k-ε turbulence calculations from MIKE 2020 and onwards). All other processes (including waves, sediments, and environmental spills) will run on the CPU.
When running fully coupled models (for example, MIKE 21 Flow Model FM, MIKE 21 ST FM, MIKE 21 SW) the Flexible Mesh engine will undertake all processes (in this case, hydrodynamics, sand transport and spectral waves) in sequence, allocating calculations to GPU cards or the CPU as required. The full sequence is hydrodynamics on GPU, then sand transport on CPU and finally spectral waves on the CPU (as the hydrodynamic flow-field affects the sand transport process, and both hydrodynamics and sand transport can affect the spectral wave process). Feedback from the sand transport and spectral wave processes is permitted and, if utilized, these will then affect the hydrodynamic flow-field at the next time step.
It is important to note that, when allocating a hydrodynamic simulation to available GPU cards, the Flexible Mesh engine will also utilize the CPU for certain important tasks (for example, reading and writing to memory and disks, data transfer between CPU and GPUs, and non-intensive hydrodynamic calculations).
When launching a simulation, the MIKE 21/3 Flexible Mesh interface will assist the user by reporting the number of physical cores together with the number of supported GPU cards. The user has the option to specify the number of threads per subdomain and the number of subdomains in the model (here, the interface will suggest an initial value based upon the number of GPU cards selected).
Importantly, even when working with one single supported GPU card, the number of subdomains can be modified to 2 (or more) to ensure that the highest level of parallelization (MPI) is activated for coupled models or other process modules running on the CPU (for example, spectral waves or sand transport). This is particularly important for Marine modelling applications.
At run-time, the Flexible Mesh engine will interrogate the number of physical cores and the specified number of subdomains and assign the correct number of threads per subdomain for the simulation. This information is recorded in the bottom of the log file.
It is recommended that users keep the NVIDIA graphics driver up to date to get the latest NVIDIA bug-fixes, and to ensure support for the latest MIKE version. Other than this requirement, there is usually no need to modify driver settings. MIKE software Release 2024 and onwards only supports CUDATM-based NVIDIA GPUs with a computation capability 6.0 or higher.
Note: The expiry date for the GPU option in the license file follows the SMA expiry date.
FURTHER INFORMATION & USEFUL LINKS
Guidelines and Reports
The Common DHI User Interface for Project Oriented Water Modelling
Download MIKE 21 Flow Model FM Benchmarking Report: Parallelisation using Graphical Processing Units (GPU)
Download MIKE 3 Flow Model FM Benchmarking Report: Parallelisation using Graphical Processing Units (GPU)
Download MIKE 21 Flow Model FM Verification Report: Parallelisation using Graphical Processing Units (GPU)