Dne neděle 22. března 2020 18:10:47 CET, Dr. Guido Dhondt napsal(a):
My parallelization only works well, if the examples are really big, e.g. 5 million equations. The test examples are smaller, maybe only 100000 equations. Therefore parallelization brings on 12 cpus max 30 % speedup due to the overhead. Running the examples sequentially one next to the other brings much more speedup, I think a factor of 5 - 10 from what I remember from my runs on leap 15.0. By the way, running these examples sequentially on another system using Suse Professional (for companies) also works without problems. Only my present system with leap 15.1 produced the problem so far.
Does the software have some runtime requirements (dependencies), which might be missing on Your current installation...?
On Sunday, March 22, 2020 5:55:02 PM CET Adam Mizerski wrote:
W dniu 22.03.2020 o 17:31, Dr. Guido Dhondt pisze:
Using "parallel" does not bring anything, unfortunately, I still get "nan" after a couple of hundred iterations. I run the software in a serial way, however, the software uses pthread to create threads. If $OMP_NUM_THREADS=n it uses n threads. To run CalculiX in a serial way I set OMP_NUM_THREADS=1. So, each time a system of equations has to be solved 1 thread is created. This happens thousands of times, since most examples require 5000 or more iterations, in each iteration the equation system is solved up to 5 times (pressure, velocity...).I do not know whether the thread creation could be a problem?
That's some important info! OMP_NUM_THREADS is used by OpenMP library, that creates threads for parallel computation inside application. In this case I think it makes more sense to run the program sequentially, allowing it to use all threads. You gain nothing by running them in paralell, where each one is using only one thread. But, regardless of how they are run, it shouldn't affect the results of computations. -- Vojtěch Zeisek https://trapa.cz/
Komunita openSUSE GNU/Linuxu Community of the openSUSE GNU/Linux https://www.opensuse.org/