'make test' runs wrong

183 views
Skip to first unread message

meng deng

unread,
Nov 8, 2022, 12:57:13 AM11/8/22
to deal.II User Group
when I execute ' make test ' after ' make --job=3 install ' in my VBOX ubuntu , it sends wrong massage:
umfpack.debug: RUN failed. Output:
/home/dm/Desktop/deal.II/dealii-9.4.0/build/tests/quick_tests/umfpack.debug: symbol lookup error: /opt/intel/oneapi/mkl/2022.2.0/lib/intel64/libmkl_intel_lp64.so.2: undefined symbol: mkl_blas_dgemm
(I have installed the Intel oneapi library)
i do not know how to slove this, it's really hard for a  green hand. 

Marc Fehling

unread,
Nov 9, 2022, 4:15:06 PM11/9/22
to deal.II User Group
Hello,

at some point, the quicktests failed on our ubuntu CI when using Intel OneAPI in deal.ii 9.4.0, see also https://github.com/dealii/dealii/issues/13477

Do you face the same problem when working on an up-to-date master branch? We fixed it at some point, see https://github.com/dealii/dealii/pull/14145

Best,
Marc

meng deng

unread,
Nov 11, 2022, 9:27:23 AM11/11/22
to dea...@googlegroups.com
  Dear Marc:
         I have tried the 'linux-debug-intel-oneapi' commands under the file '.github/workflows/linux.yml' at https://github.com/dealii/dealii/pull/14145/files, but I still can not handle this problem. I can not even pass the 'make -j 2' command (the terminal exit automatically when progress reaches 57%). Is it better to create a new virtual box environment without intel mkl and mpi lib?
          
         Best regards
         Meng 

Marc Fehling <mafe...@gmail.com> 于2022年11月10日周四 05:15写道:
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/061fc36d-1c57-49c3-8b9c-092e41a5bd43n%40googlegroups.com.

Marc Fehling

unread,
Nov 11, 2022, 12:43:33 PM11/11/22
to deal.II User Group
Hello Meng,

when you terminal exits at 57%, you must have encountered some compilation problem. The original problem you posted was a runtime error while testing, and for this you compiled the library. Let me ask you a couple of questions:
  • What exactly is the error message you encountered while compiling your code?
  • How did you configure deal.II, i.e., how did the cmake command look like? Exactly like in the 'linux-debug-intel-oneapi' CI stage?
  • How did you install the Intel oneAPI suite?
Marc

meng deng

unread,
Nov 12, 2022, 1:09:23 AM11/12/22
to deal.II User Group
Dear Marc:
          thanks for your patience. 

          1, I deleted the deal.ii and tried to install it once again yesterday. I was sorry I could not remember what the error message exactly was. But, I succeeded on my second try when I removed Intel compiler from my environment variables. I commented out these two lines in my .bashrc file. 
           source /opt/intel/oneapi/setvars.sh intel64 --force
           source /opt/intel/oneapi/vtune/2022.4.0/apsvars.sh 
           
          2, yes, I just followed the 'linux--debug-intel-oneapi', maybe I made some wrong configuration. 

         3, I installed the Intel oneAPI suite for another project. It used the Base and HPC toolkit. 

          when I run the command( after ' cmake -DDEAL_II_DIR=/mypath . ') in step-* directories with intel compilers on, error message shows again. It seems like that there are some crashes between deal.ii and Intel (in my humble opinion).  
 
Snipaste_2022-11-12_13-53-40.pngSnipaste_2022-11-12_13-55-03.png

          Meng

Marc Fehling

unread,
Nov 12, 2022, 2:40:56 PM11/12/22
to deal.II User Group
Hello Meng,

so you say in 1) you removed the Intel compilers from your PATH variable by commenting out the `source ...` command, but in 2) you say you are using the cmake command from `linux-debug-intel-oneapi` which refers to `icpc` compiler. There is something fishy going on, because after removing the `source ...` command, cmake can not know anything about `icpc`.

So I assume you are using the `gcc` compiler instead now, which is fine. The error you encounter now is some confusion with oneTBB.

The easiest way to solve this is to use the TBB version that comes bundled with deal.II. You can force to use this version with the cmake command DEAL_II_FORCE_BUNDLED_TBB=ON

Marc

meng deng

unread,
Nov 14, 2022, 9:01:37 AM11/14/22
to deal.II User Group
Dear Marc:

did you mean that I can 'make' successfully with 'source /opt/intel/oneapi/setvars.sh intel64 --force & source /opt/intel/oneapi/vtune/2022.4.0/apsvars.sh'?  
I followed your advice and typed the commands:

make clean
cmake -DCMAKE_INSTALL_PREFIX=/home/dm/bin/deal ../dealii-9.4.0
cmake -D DEAL_II_FORCE_BUNDLED_TBB=ON ../dealii-9.4.0
make --jobs=3 install
make test

4 tests passed and then entered into step-* files

cmake -DDEAL_II_DIR=/home/dm/bin/deal .
make 
errors happened(same with my last two pictures). cmake configuration files are attached. 
this is intel compiler settings:
Snipaste_2022-11-14_20-36-15.png

Meng

summary.log
detailed.log

Marc Fehling

unread,
Nov 15, 2022, 1:03:15 PM11/15/22
to deal.II User Group
Hello Meng,

from the deal.II configuration I see that:
  • you compile with GNU 11.3.0 (and not with the Intel compilers)
  • you compile with deal.II 9.4.0 (and not with the latest version from the master branch)
  • you do not compile with Intel MKL (although you used MKL in the initial message in this conversation which was the cause for the failing test)
You changed the way you configure deal.II throughout this conversation, which makes it hard (or rather impossible) to find the cause of your initial question.

From the logs you posted, I still do not see the error you encountered. What is the error message you get after calling `make`?

If you really want to compile with Intel oneAPI with MPI and MKL, stick as close as possible to the configuration from the github runner, i.e.,

source /opt/intel/oneapi/setvars.sh
cmake \
-D CMAKE_CXX_COMPILER=icpc \
-D DEAL_II_WITH_MPI=ON \
-D DEAL_II_WITH_LAPACK=ON \

-D DEAL_II_WITH_TBB=ON \

-D MPI_DIR=${I_MPI_ROOT} \

-D BLAS_DIR=${MKLROOT} \

-D LAPACK_DIR=${MKLROOT} \

-D TBB_DIR=${TBBROOT} \
-D CMAKE_INSTALL_PREFIX=/home/dm/bin/deal \
../dealii-9.4.0
make -j3 install

Marc
Reply all
Reply to author
Forward
0 new messages