Repository navigation
GPU comutations #120
Description
Activity
You have to activate the CMake option "USE_GPU_NEIGHBORHOODSEARCH".
I have activated the option "USE_GPU_NEIGHBORHOODSEARCH". But when I run the program still cannot run by GPU. Is there any adjustment in Visual Studio? or windows?
Did you install Cuda?
Yes, Cuda toolkit 10.1
Do you see a message "Use cuNSearch for neighborhood search" when you execute CMake?
Yes. I use cmake and I see this message. But when I try to run the C++ program using Visual studio only it uses the CPU .
If your CPU does not support AVX, turn off the USE_AVX flag.
Using Win32 for window creation
Use cuNSearch for neighborhood search
The CUDA compiler identification is NVIDIA 11.4.120
Detecting CUDA compiler ABI info
Detecting CUDA compiler ABI info - done
Check for working CUDA compiler: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/bin/nvcc.exe - skipped
Detecting CUDA compile features
Detecting CUDA compile features - done
Found CUDA: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4 (found suitable version "11.4", minimum required is "9.0")
Configuring done
Generating doneThat is not possible since cuNSearch is used which does not implement any CPU computation.
Note that most of the work is done in the pressure solver which is not implemented on the GPU. There is one pull request with a Cuda implementation. However, in our tests this was slower than avx.
So it is using the GPU and if I need faster runs should I try with better devices?
The most time consuming part is typically the pressure solver. The fastest one is DFSPH with AVX support. As far as I can see you are also using an implicit viscosity solver. This means that another linear system has to be solved which is also time consuming.
More CPU cores will help to make the simulation faster.
Thank you so much
The correct option to pass to cmake is
-DUSE_GPU_NEIGHBORHOOD_SEARCH=On.- locked and limited conversation to collaborators
on Mar 29, 2022

Hi

I installed the splishsplash on a machine with Quadro p5000 GPU. But when I am running te code it seems that GPU is not active.
What should I do to perform the calculations with GPU.
Regards