occ and Pardiso error
- go
- Topic Author
- New Member
Less
More
1 year 6 months ago - 1 year 6 months ago #4803
by go
occ and Pardiso error was created by go
Hi,
we have built netgen/ngsolve with occ on Linux from sources successfully and we can run most examples successfully. If we run "netgen navierstokes.py" we get error messages like:
Setup and Factorization: PARDISO returned error -3!
err = reordering problem
symmetric = 0
spd = 0
compressed = 1
inner = 0x7f81240660f0
cluster = 0
Traceback (most recent call last):
File "<string>", line 43, in <module>
netgen.libngpy._meshing.NgException: PardisoInverse: Setup and Factorization failed.
Finished executing navierstokes.py
Setup and Factorization: PARDISO returned error -2!
err = not enough memory
symmetric = 0
spd = 0
compressed = 1
inner = 0x7f39ac0660f0
cluster = 0
Traceback (most recent call last):
File "<string>", line 54, in <module>
netgen.libngpy._meshing.NgException: PardisoInverse: Setup and Factorization failed.
The error seems to be related to occ and Pardiso. For comparison:
I did not notice any obviously relevant differences comparing the linking commands in the output of make in some verbose mode (make VERBOSE=1) for the two versions.
Do you have some idea/any advice for us how to fix the problem?
Best regards,
Guenther
we have built netgen/ngsolve with occ on Linux from sources successfully and we can run most examples successfully. If we run "netgen navierstokes.py" we get error messages like:
Setup and Factorization: PARDISO returned error -3!
err = reordering problem
symmetric = 0
spd = 0
compressed = 1
inner = 0x7f81240660f0
cluster = 0
Traceback (most recent call last):
File "<string>", line 43, in <module>
netgen.libngpy._meshing.NgException: PardisoInverse: Setup and Factorization failed.
Finished executing navierstokes.py
Setup and Factorization: PARDISO returned error -2!
err = not enough memory
symmetric = 0
spd = 0
compressed = 1
inner = 0x7f39ac0660f0
cluster = 0
Traceback (most recent call last):
File "<string>", line 54, in <module>
netgen.libngpy._meshing.NgException: PardisoInverse: Setup and Factorization failed.
The error seems to be related to occ and Pardiso. For comparison:
- If we switch in some other python script to the PARDISO solver we observe the same error.
- If we run "python3 navierstokes.py" the same computation is completed successfully.
- If we use a different solver we can run "netgen navierstokes.py" successfully.
- If we build without occ, we can run both "netgen navierstokes.py" and "python3 navierstokes.py" successfully.
- Debian 11 (bullseye)
- mkl from non-free Debian packages "intel-mkl" etc
- occ from Debian packages "libocct-data-exchange-dev libocct-draw-dev occt-misc libxi-dev libxi6"
- my version: NETGEN-6.2.2301-41-ga0b9dca2, but the colleagues may use more recent checkouts.
- cmake call without occ:
Code:cmake -DUSE_MPI=ON -DUSE_MKL=ON -DMKL_INCLUDE_DIR=/usr/include/mkl/ -DCMAKE_INSTALL_PREFIX=...
- cmake call with occ:
Code:cmake -DUSE_OCC=ON -DUSE_MPI=ON -DUSE_MKL=ON -DMKL_INCLUDE_DIR=/usr/include/mkl/ -DCMAKE_INSTALL_PREFIX=...
I did not notice any obviously relevant differences comparing the linking commands in the output of make in some verbose mode (make VERBOSE=1) for the two versions.
Do you have some idea/any advice for us how to fix the problem?
Best regards,
Guenther
Last edit: 1 year 6 months ago by go. Reason: added NETGEN version
1 year 6 months ago #4804
by matthiash
Replied by matthiash on topic occ and Pardiso error
Hi Günther,
Thanks for the detailed bug report. I managed to reproduce your issue exactly as you stated ( happens only with OCC ). FYI: I used this docker build to trigger the bug (not using debian myself):
github.com/mhochsteger/ngsolve_docker_compose_debian
I will let you know, when I have an update/workaround/idea whats wrong here.
Best,
Matthias
Thanks for the detailed bug report. I managed to reproduce your issue exactly as you stated ( happens only with OCC ). FYI: I used this docker build to trigger the bug (not using debian myself):
github.com/mhochsteger/ngsolve_docker_compose_debian
I will let you know, when I have an update/workaround/idea whats wrong here.
Best,
Matthias
1 year 6 months ago #4805
by matthiash
Replied by matthiash on topic occ and Pardiso error
First workaround is to set the environment variable MKL_THREADING_LAYER to gnu:
export MKL_THREADING_LAYER=gnu
Best,
Matthias
export MKL_THREADING_LAYER=gnu
Best,
Matthias
- go
- Topic Author
- New Member
Less
More
1 year 6 months ago #4807
by go
Replied by go on topic occ and Pardiso error
Hi Matthias,
I can confirm that the suggested setting fixes the problem.
Thanks a lot for the quick solution and the great support.
Best regards,
Guenther
I can confirm that the suggested setting fixes the problem.
Thanks a lot for the quick solution and the great support.
Best regards,
Guenther
Time to create page: 0.107 seconds