⯇ Zurück zu Menüs und Werkzeuge Siedlungsentwässerung
Menüpunkt: Simulation > Konfiguration der Parallelisierung
Handbuch: MIKE+ Model Manager User Guide (page 74) • section 2.9.6 Simulation Menu
In der Konfiguration der Parallelisierung legen Sie fest, wie mehrere Rechenkerne (CPUs) verwendet werden sollen, und insbesondere, wie Grafikkarten (GPUs) handzuhaben sind.
Beachten Sie in dem Zusammenhang:
Nachdem Nvidia die Unterstützung älterer Grafikkarten einschränkt, empfiehlt DHI die Verwendung von Grafikkarten mit einer Compute Capability von 5.2 oder höher. Die Compute Capability aller Nvidia-Grafikkarten finden Sie auf der Wikipedia-Seite CUDA
If the GPU is visible in the ‘Parallelisation configuration’ window in MIKE+, then it means that it’s recognized by MIKE, so there is no driver problem.
This can be verified in the log file from the 2D simulation (in MIKE+, it usually ends with _m21fm.log) after the simulation was completed. The end of the file shows what has actually been used by the engine:
If GPU is mentioned, it has been used. If it’s not used, there won’t be “GPU” mentioned.
One can follow the GPU usage via the Task Manager. The GPU usage depends on the model size and how many times data is exchanged. If the model is small then the whole memory in the GPU don't come into play, and the model will need time to transfer the data forth and back to the CPU anyway. So actually often use of GPU requires a larger size model before it is feasible to use this over CPU with OpenMP or MPI.
(In the figure below I run an example MIKE 21 FM model with one GPU).
You can compare this with having a big bus: you can transport 100 people, but even if there are only 4 passengers, the bus doesn't drive faster. In that case it might be better to use a car.
One could of course have two simulations running simultaneously as there will be tool on the GPU, however this will stress the connections between the GPU and CPU, so the simulation will often be slower.
You can look at threads as a kind of 'power' packages. There is no license limitation as to the number of threads, however in general for MIKE 21 we recommend that the product of the 'Number of sub-domains' x 'Number of threads' should not exceed the actual number of physical CPU cores as this utilizes the CPUs in the optimal way.
Hence, you can divide your domain into e.g. 16 subdomains and use 1 thread for each subdomain, or you can define 1 subdomain and use 16 threads in one domain, or you can do a combination with e.g. 8 subdomains, each with 2 threads. Which solution to use depend on the size of the domain (as it takes time to 'glue' the subdomain together again), but for inland flooding with many elements it is almost always a good idea to divide the domain up into many subdomains.1)