OpenCruncher solves the spatially-filtered compressible Navier-Stokes equations using the finite-volume method. Various LES models, like the Smagorinsky or WALE model are available to model the physical effects of unresolved turbulence. For high-Reynolds number wall bounded flows wall-models and wall-functions are implemented. Synthetic turbulence at inlets is also available.
The solver is extremely fast when running on GPUs or GPU clusters and can operate in single or double precision.
OpenCruncher runs on different operating systems like Linux (Ubuntu, Suse, etc.) or Microsoft Windows. Due to this large number of platforms, no precompiled packages exist. The code must be compiled from source for each platform.
Getting the source code
We use the version control system Git.
System requirements
- Git
Clone the code using GitLab
- Sign in into GitLab@OpenCruncher
- Explore public projects
Explore projects - Add your public (not private!) SSH key
Edit profile / SSH Keys - Clone the repositories
git clone git@git.opencruncher.com:opensource/Cruncher.git
git clone git@git.opencruncher.com:opensource/CruncherRegression.git
Build
System requirements
To build OpenCruncher on your system, you will need the following installed:
- CMake (minimum version 3.18)
- Cuda language, NVIDIA CUDA Toolkit
- C++ compiler, Microsoft Visual Studio or GCC
- MPI, e.g. OpenMPI
- (optional: NVIDIA Collective Communication Library – NCCL)
Prior to building, ensure that the system requirements are satisfied.
cmake --version
nvcc --version
Figure out your GPU hardware and the NVIDIA CUDA compute capability.
Build OpenCruncher
- Prepare directories. E.g. Linux
mkdir Build
cd Build
mkdir Release
cd Release
- Check your GPU hardware and add your compute capability or CUDA architecture
edit Source/EngineGPU/CMakeLists.txt
- Configure
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../Install ../../Source
- Build
cmake --build .
Build faster, e.g. with 16 cores
cmake --build . -j 16
- Install
cmake --install .
Test OpenCruncher
To validate the build and check if OpenCruncher delivers the correct results run the regression deck.
- Run the regression deck
cd CruncherRegression
python3 regress.py
Report a bug
- Sign into GitLab@OpenCruncher
- Explore public projects
- Explore projects
- Select Cruncher
- Add a new issue
Participate in the development
- Ask for developer access, select the project and request access
- Add your user name and email to you local repository
git config user.name "username" git config user.email "name@myOrganization.com"
- Add branches to the local repository, name = username/brachname
- Push the local branch
git push origin username/branchname
- Create a merge request, reviewer must be “Code master”