Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7117 Discussions

mkl modulefiles loading error in OneApi toolkit

yannj
Beginner
7,073 Views

I installed the current compilers/mkl lib on a centos.

The version of the compiler is : compiler/2021.1.2

The version of the mkl version is : mkl/2021.1.1

When i'm trying to load the mkl, i've got the error :

lio5-devel% module load mkl/latest
Loading mkl version 2021.1.1
ERROR: Unable to locate a modulefile for 'compiler-rt/2021.1.1'

So i installed compiler-rt/2021.1.1 with the package :

intel-oneapi-compiler-dpcpp-cpp-runtime-2021.1.1

Therefore, i can now load the mkl, but then i cannot load the lastest compiler !

lio5-devel% module load compiler/2021.1.2
Loading compiler version 2021.1.2
WARNING: tbb/latest cannot be loaded due to a conflict.
HINT: Might try "module unload tbb" first.

 

The problem is that the compiler-rt version is older than the lastest compiler, but is needed for the mkl modulefiles.

What is the good way to load the intel mkl with the lastest compiler ?

Thanks in advance,

Yann

Labels (1)
0 Kudos
14 Replies
RahulV_intel
Moderator
7,030 Views

Hi Yann,

 

The latest version of the DPC++ compiler runtime 2021.1.2 seems to be available via APT. I have installed it on ubuntu 18.04. However, I do not have the CentOS environment to try out.

 

Could you please try out the steps below:

  • Firstly, setup the oneAPI repository, as given in the link below:

https://software.intel.com/content/www/us/en/develop/articles/installing-intel-oneapi-toolkits-via-yum.html#inpage-nav-1

 

  • If you have already set the repository, make sure that you update all the packages.

 

  • To list all the oneAPI packages, use this command:
# YUM:

sudo -E yum --disablerepo="*" --enablerepo="oneAPI" list available



# DNF:

sudo -E dnf --disablerepo="*" --enablerepo="oneAPI" list available

 

Search for "intel-oneapi-compiler-dpcpp-cpp-runtime-2021.1.2" and if you find it, you may either install/upgrade this package.

 

Let me know in case you don't see the latest version.

 

Thanks,

Rahul

0 Kudos
yannj
Beginner
7,024 Views

Hi Rahul,

Thanks for taking the time to help me.

I think it's great that oneAPI includes scripts for modules. It's so useful. But it looks like it's broken for the mkl lib. 

I've got all the rpm already updated

# yum --disablerepo="*" --enablerepo="oneAPI" update
Modules complémentaires chargés : copr, fastestmirror, langpacks, nvidia
Loading mirror speeds from cached hostfile
No packages marked for update

Here are the available modules :

--------------------------------------------------- /opt/intel/oneapi/modulefiles ----------------------------------------------------
advisor/2021.1.1        compiler-rt32/latest  dev-utilities/2021.1.1  dpct/latest                   itac/2021.1.1     tbb/latest
advisor/latest          compiler/2021.1.1     dev-utilities/latest    dpl/2021.1.2                  itac/latest       vpl/2021.1.1
ccl/2021.1.1            compiler/2021.1.2     dnnl-cpu-gomp/2021.1.1  dpl/latest                    mkl/2021.1.1      vpl/latest
ccl/latest              compiler/latest       dnnl-cpu-gomp/latest    init_opencl/2021.1.2          mkl/latest        vtune/2021.1.2
clck/2021.1.1           compiler32/2021.1.1   dnnl-cpu-iomp/2021.1.1  init_opencl/latest            mkl32/2021.1.1    vtune/latest
clck/latest             compiler32/2021.1.2   dnnl-cpu-iomp/latest    inspector/2021.1.1            mkl32/latest
compiler-rt/2021.1.1    compiler32/latest     dnnl-cpu-tbb/2021.1.1   inspector/latest              mpi/2021.1.1
compiler-rt/2021.1.2    dal/2021.1.1          dnnl-cpu-tbb/latest     intel_ipp_intel64/2021.1.1    mpi/latest
compiler-rt/latest      dal/latest            dnnl/2021.1.1           intel_ipp_intel64/latest      oclfpga/2021.1.2
compiler-rt32/2021.1.1  debugger/10.0.0       dnnl/latest             intel_ippcp_intel64/2021.1.1  oclfpga/latest
compiler-rt32/2021.1.2  debugger/latest       dpct/2021.1.1           intel_ippcp_intel64/latest    tbb/2021.1.1

When i'm trying to load the latest compiler (2021.1.2) with the latest mkl (2021.1.1) i've got the error :

jobic@lio5:~$ module load compiler/latest mkl/latest
Loading compiler version 2021.1.2
Loading tbb version 2021.1.1
Loading debugger version 10.0.0
Loading compiler-rt version 2021.1.2
Loading dpl version 2021.1.2
Loading oclfpga version 2021.1.2
Loading mkl version 2021.1.1
WARNING: compiler-rt/2021.1.1 cannot be loaded due to a conflict.
HINT: Might try "module unload compiler-rt" first.

That's because in the module script, it's trying to load compiler-rt/2021.1.1 by default, which conflicts with my latest rt version.

I can still use everything by loading directly the bash environment scripts :

source /opt/intel/oneapi/compiler/2021.1.2/env/vars.sh
source /opt/intel/oneapi/mkl/2021.1.1/env/vars.sh

But i wanted it to work with modules.

Do you see where the problem is ?

Thanks,

Yann

0 Kudos
yannj
Beginner
7,022 Views

Hi again,

I tried to desintall/reinstall everything

 

# yum --disablerepo="*" --enablerepo="oneAPI" remove '*oneapi*'
# yum --disablerepo="*" --enablerepo="oneAPI" install intel-basekit intel-hpckit

 

I then run the script 

 

# ./modulefiles-setup.sh

 

I loaded everything to check :

 

# . setvars.sh
:: initializing oneAPI environment ...
   BASH version = 4.2.46(2)-release
:: debugger -- latest
:: vpl -- latest
:: mpi -- latest
:: mkl -- latest
:: itac -- latest
:: intelpython -- latest
:: dpcpp-ct -- latest
:: clck -- latest
:: dev-utilities -- latest
:: tbb -- latest
:: advisor -- latest
:: dpl -- latest
:: vtune -- latest
:: dal -- latest
:: ippcp -- latest
:: compiler -- latest
:: ccl -- latest
:: inspector -- latest
:: dnnl -- latest
:: ipp -- latest
:: oneAPI environment initialized ::

# icc -V
Intel(R) C Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.1.2 Build 20201208_000000
Copyright (C) 1985-2020 Intel Corporation.  All rights reserved.

 

I then have the following modules :

 

--------------------------------------------------- /opt/intel/oneapi/modulefiles ----------------------------------------------------
advisor/2021.1.1        compiler/latest         dnnl-cpu-iomp/2021.1.1  init_opencl/latest            mkl32/2021.1.1    vtune/latest
advisor/latest          compiler32/2021.1.2     dnnl-cpu-iomp/latest    inspector/2021.1.1            mkl32/latest
ccl/2021.1.1            compiler32/latest       dnnl-cpu-tbb/2021.1.1   inspector/latest              mpi/2021.1.1
ccl/latest              dal/2021.1.1            dnnl-cpu-tbb/latest     intel_ipp_intel64/2021.1.1    mpi/latest
clck/2021.1.1           dal/latest              dnnl/2021.1.1           intel_ipp_intel64/latest      oclfpga/2021.1.2
clck/latest             debugger/10.0.0         dnnl/latest             intel_ippcp_intel64/2021.1.1  oclfpga/latest
compiler-rt/2021.1.2    debugger/latest         dpct/2021.1.1           intel_ippcp_intel64/latest    tbb/2021.1.1
compiler-rt/latest      dev-utilities/2021.1.1  dpct/latest             itac/2021.1.1                 tbb/latest
compiler-rt32/2021.1.2  dev-utilities/latest    dpl/2021.1.2            itac/latest                   vpl/2021.1.1
compiler-rt32/latest    dnnl-cpu-gomp/2021.1.1  dpl/latest              mkl/2021.1.1                  vpl/latest
compiler/2021.1.2       dnnl-cpu-gomp/latest    init_opencl/2021.1.2    mkl/latest                    vtune/2021.1.2

 

I'm still having the same issue :

 

$ module load compiler/latest mkl/latest
Loading compiler version 2021.1.2
Loading tbb version 2021.1.1
Loading debugger version 10.0.0
Loading compiler-rt version 2021.1.2
Loading dpl version 2021.1.2
Loading oclfpga version 2021.1.2
Loading mkl version 2021.1.1
ERROR: Unable to locate a modulefile for 'compiler-rt/2021.1.1'

 

I should load the latest compiler-rt version, not the old one.

In the module script of oneapi/modulefiles/mkl/latest i've got :

 

# Load dependencies
module load compiler-rt/${modulefilever}
module load tbb/${modulefilever}

 

and i don't have compiler-rt/${modulefilever}, because the version of compiler/latest is 2012.1.2, therefore i have (see above) compiler-rt/2021.1.2, and not compiler-rt/2021.1.1, which is the version of the mkl.

Thanks again,

Yann

0 Kudos
RahulV_intel
Moderator
6,999 Views

Hi,


Thanks for reporting your issue. We are working on it and will get back to you.


Thanks,

Rahul


0 Kudos
Khang_N_Intel
Employee
6,971 Views

Hi Yann,

 

I will take a look at this issue and will let you know what to do next.

Also, I went forum thread and it seems like it is closed.

 

Khang


0 Kudos
Khang_N_Intel
Employee
6,766 Views

Hi Yann,

Are you still having problem with loading the modules?

Have you tried the latest version of oneAPI, 2021.2?

Are you using the latest version of CentOS (8.x)?


0 Kudos
MRajesh_intel
Moderator
6,671 Views

Hi,


Can you please update us on whether your issue has been resolved or not?


Regards

Rajesh.


0 Kudos
yannj
Beginner
6,666 Views

Hi,

Thanks for the heads up.

I reinstalled everything followed the documentation, and load modulefiles with :

# ./modulefiles-setup.sh
# module use modulefiles

 

When i'm trying to load, i've got the error :

# module load compiler mkl
Loading compiler version 2021.2.0
Loading tbb version 2021.2.0
Loading debugger version 10.1.1
cmdInfo.c(207):ERROR:11: Usage is 'module-infomode [load|remove|display|help|whatis|switch1|switch2|switch3|switch|nonpersist]'
debugger/latest(54):ERROR:102: Tcl command execution failed: if { [ module-info mode unload ] } {
puts stderr "Removing $modulefilename version $modulefilever"
}

Loading compiler-rt version 2021.2.0
compiler/latest(105):ERROR:102: Tcl command execution failed: if { [ is-avail dpl ] } {
module load dpl
}

Loading mkl version 2021.2.0
compiler-rt/2021.2.0(71):ERROR:150: Module 'compiler-rt/2021.2.0' conflicts with the currently loaded module(s) 'compiler-rt/latest'
compiler-rt/2021.2.0(71):ERROR:102: Tcl command execution failed: conflict $mname64

tbb/2021.2.0(73):ERROR:150: Module 'tbb/2021.2.0' conflicts with the currently loaded module(s) 'tbb/latest'
tbb/2021.2.0(73):ERROR:102: Tcl command execution failed: conflict $mname64

 

Regards,

Yann

0 Kudos
MRajesh_intel
Moderator
6,628 Views

Hi,


Can you please specify the OS version used.


Thanks

Rajesh.


0 Kudos
MRajesh_intel
Moderator
6,606 Views

Hi,


Can you please provide the above details?


Regards

Rajesh.


0 Kudos
yannj
Beginner
6,598 Views

Hi,

Sorry for the late answer.

I'm on

cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

Regards,

Yann

0 Kudos
MRajesh_intel
Moderator
6,587 Views

Hi,


We currently do not support CentOS 7.x


Please visit the below link for the system requirements.

https://software.intel.com/content/www/us/en/develop/articles/oneapi-math-kernel-library-system-requirements.html


Regards

Rajesh.




0 Kudos
MRajesh_intel
Moderator
6,572 Views

Hi,


We are closing this thread for now as we don't support older CentOS. If you require any additional assistance from Intel, please start a new thread. Any further interaction in this thread will be considered community only.


Have a Good day.


Regards

Rajesh


0 Kudos
RobbieTheK
New Contributor I
3,159 Views

I fixed ours by updating the module file for intel-oneAPI-toolkit/mkl/2023.1.0 and just put the correct module names that correspond to compiler-rt and tbb:

 

# Load required dependencies

if { ![ is-loaded tbb ] }           { module load intel-tbb-oss/intel64/2020.3 }

if { ![ is-loaded compiler-rt ] }   { module load intel-oneAPI-toolkit/compiler-rt/2023.1.0 }

0 Kudos
Reply