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

Missing Optional Prerequisite(s)

Georgios_S_
New Contributor II
4,122 Views

I want to install MKL. Here is the download page I followed. The name of the tar I downloaded is "parallel_studio_xe_2015_update3". As a matter of fact I have completed my registration of Intel® Parallel Studio XE Professional Edition for C++ Linux* for student-use only.

When running the install script, i.e."./install.sh", which I saw from these instructions, I got this:

Step 1 of 7 | Prerequisites > Missing Optional Prerequisite(s)
--------------------------------------------------------------------------------
There are one or more optional unresolved issues. It is highly recommended to
resolve them all before you continue the installation. You can fix them without
exiting from the installation and re-check. Or you can quit from the
installation, fix them and run the installation again.
--------------------------------------------------------------------------------
Missing optional prerequisites
-- Intel(R) MPI Library, Development Kit 5.0 Update 3 for Linux* OS: Unsupported
OS
-- Intel(R) Trace Analyzer and Collector 9.0 Update 3 for Linux* OS: Unsupported
OS
-- Intel(R) VTune(TM) Amplifier XE 2015 Update 3: Unsupported OS
-- Intel(R) Inspector XE 2015 Update 1: Unsupported OS
-- Intel(R) Advisor XE 2015 Update 1: Unsupported OS
-- Intel(R) Parallel Studio XE 2015 Update 3 Composer Edition for C++ Linux*:
Unsupported OS
-- Intel(R) Parallel Studio XE 2015 Update 3 Composer Edition for Fortran
Linux*: Unsupported OS
-- Intel(R) Parallel Studio XE 2015 Update 3 Composer Edition for Linux*:
Unsupported OS
-- System wide Hardware Event-based Sampling (EBS) analysis is not available on
the system.


I am in an unknown for me computer, which runs on Debian 8, so I have no clue what is installed and what is not. However, I would like to do whatever I have to do, in order to get the most important (if not all) the prerequisites. I can provide information on what the system has, etc., but I need quidance. I am also a sudoer if that matters.

I am a student and thus the produce is for student use only. However, this is my first time using a developer tool from Intel, so I badly need your help. My goal is to use ScaLAPACK with MKL.

If there is nothing I can do, this means I should find another machine or I am still OK to go for my purspose?

0 Kudos
1 Solution
mecej4
Honored Contributor III
4,078 Views

There is a good chance that you have a working installation, particularly if you had a functioning installation of gcc prior to installing MKL and Intel-C.

To see if this is the case, open a shell window, source the compiler start-up script ("source <path_to_compiler>iccvars.sh intel64") and try running the C compiler ("icc -v").

View solution in original post

0 Kudos
31 Replies
mecej4
Honored Contributor III
4,079 Views

There is a good chance that you have a working installation, particularly if you had a functioning installation of gcc prior to installing MKL and Intel-C.

To see if this is the case, open a shell window, source the compiler start-up script ("source <path_to_compiler>iccvars.sh intel64") and try running the C compiler ("icc -v").

0 Kudos
TimP
Honored Contributor III
3,359 Views

As sham said, the main issue, that Intel doesn't guarantee to support debian, should not prevent you from proceeding with installation.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

mejec4, I had gcc before trying to install MKL.

I got:

gsamaras@pythagoras:~/Desktop/mkl/parallel_studio_xe_2015_update3$ source /usr/lib/gcc/x86_64-linux-gnu/4.9/iccvars.sh intel64
bash: /usr/lib/gcc/x86_64-linux-gnu/4.9/iccvars.sh: No such file or directory
(same behavior from the root directory). The path from gcc was obtained by this: gcc -print-search-dirs

I am not sure if that was your point though.

TIm, I just do not want to ignore what I saw and then having an MKL performing poorly, because it lacks some prerequisites. Also the instructions I linked above mention Debian 6 and 7, but this computer has Debian 8. But maybe Debian 8 wasn't out when the document was created.

What should I do?

0 Kudos
mecej4
Honored Contributor III
3,359 Views

I think that you are looking in the wrong places for the start-up script iccvars.sh. Before trying to source the script, locate it first, using the "find" utility or some other way.

The script iccvars.sh is usually installed in the bin directory of the Icc/Ifort/MKL installation, which is usually /opt/intel. However, the installation directory can be chosen at installation time to be something other than /opt/intel. Do you remember specifying a non-default location when you installed?

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

I haven't installed the package yet, since when I got the message about the missing prerequisites I exited the installation process. The only thing I have done to the downloaded tat is to untar it. I only have this now:

gsamaras@pythagoras:~/Desktop/mkl/parallel_studio_xe_2015_update3$ ls
cd_eject.sh                     PUBLIC_KEY.PUB
doc                             Readme_Cluster_Edition_2015.txt
install_GUI.sh                  Release_Notes_Cluster_Edition_2015_L.pdf
install.sh                      Release_Notes_C_Professional_Edition_2015_L.pdf
ipsxe_support_cluster.txt       Release_Notes_Fortran_Professional_Edition_2015_L.pdf
ipsxe_support_prof_c.txt        Release_Notes_Professional_Edition_2015_L.pdf
ipsxe_support_prof_fortran.txt  rpm
ipsxe_support_prof.txt          silent.cfg
license.txt                     sshconnectivity.exp
m_ita_p_9.0.3.051.dmg           third-party-programs.txt
pset                            w_ita_p_9.0.3.051.exe

I also got: find: `iccvars.sh': No such file or directory

 

0 Kudos
TimP
Honored Contributor III
3,359 Views

Installing on unsupported OS has no effect on performance.  As you mentioned, the testing team would have chosen distros available when they started. Assuming the new g++ is compatible and so on, it should work.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

What does unsupported OS means? So Mr. Prince, you are saying that even though I am missing these prerequisites, I should follow with the installation as if I hadn't receive this message about them missing and in the end the package will perform just fine?

0 Kudos
mecej4
Honored Contributor III
3,359 Views

I have installed IFort on openSuse for a number of years even though that distribution is unsupported. Given the large number of Linux distributions that exist, it is not surprising that many of them are "unsupported" and untested. I have never had any problems with the installations and the installed compilers have worked fine. In the present context, "unsupported" amounts to "we have not tested with that particular 'distro, so there is a chance that it will not work".

My suggestion is to go ahead with the installation, ignoring the "unsupported" messages. When the installation is complete, test it by attempting to compile a few short examples. Let us know how it works out.

0 Kudos
TimP
Honored Contributor III
3,359 Views

According to recent reports on this forum,  some c++14 cases will work with installed g++5.1 only with the icpc 16.0 beta compiler, as an example of problems which may surface with newer installed components than those which were tested and "supported." 

.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

I see, thank you both, I will start the installation once again now and report back!

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

OK, the installation is complete. Now I want to test some examples to make sure that we are good to go with developing my code.

I went to the examples, untared a package. Then there was a makefile, but I was not able to make it run. I tried make and make -f makefile, but no success. Is there any step-by-step tutorial for absolute beginners in MKL? Like there was this for installing it.

0 Kudos
mecej4
Honored Contributor III
3,359 Views

You can use the C example in the MKL manual: https://software.intel.com/en-us/node/522111 .

Put the source into, say, xmkl.c. Source the Intel C/MKL startup script as discussed earlier in this thread, change to the directory where you put xmkl.c, and compile using "icc -mkl xmkl.c". Then type "./a.out" to run the resulting program.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

It seems there is not such thing as iccvars.sh. Here is what I got after running ./install.sh

gsamaras@pythagoras:~/Desktop/mkl$ ls
advisor_xe                    ipp
advisor_xe_2015               lib
advisor_xe_2015.1.10.380555   man
bin                           mkl
composerxe                    parallel_studio_xe_2015
composer_xe_2015              parallel_studio_xe_2015_update3
composer_xe_2015.3.187        parallel_studio_xe_2015_update3.tgz
include                       tbb
inspector_xe                  vtune_amplifier_xe
inspector_xe_2015             vtune_amplifier_xe_2015
inspector_xe_2015.1.2.379161  vtune_amplifier_xe_2015.3.0.403110
gsamaras@pythagoras:~/Desktop/mkl$ find iccvars.sh
find: `iccvars.sh': No such file or directory
gsamaras@pythagoras:~/Desktop/mkl$ cd parallel_studio_xe_2015
gsamaras@pythagoras:~/Desktop/mkl/parallel_studio_xe_2015$ ls
bin            ipsxe_support_prof_c.txt  psxevars.sh  uninstall_GUI.sh
Documentation  psxevars.csh              uninstall    uninstall.sh

 

0 Kudos
mecej4
Honored Contributor III
3,359 Views

Please clarify whether you installed the Intel C compiler and MKL, or only MKL. If only the latter, you will have to use a different C compiler, such as GCC, with MKL, and the procedure for building with GCC+MKL is a bit different from that for building with ICC+MKL.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

Well, I only downloaded the tar with this name: "parallel_studio_xe_2015". It didn't mention anything about the compiler issue you are mentioning, so I did not know. I have GCC installed, but I can download Intel's compiler if it might perform a bit better, as soon as someone provides me the link for it and it is available for student-use. Otherwise, I should learn how to compiler MKL with GCC.

0 Kudos
TimP
Honored Contributor III
3,359 Views

Performance of mkl functions doesn't depend on the compiler of the calling codear. Parallel studio will install intel c++ or Fortran, unless you deselect, and either of those includes compilervars (same as iccvars) set-up script in its installation. At the conclusion of installation the web page explaining compilervars displays if your browser is working.  If mkl is installed also, compilervars will run mklvars  so it may be more convenient than gcc. Likewise icc -qopenmp chooses the right openmp runtime for mkl parallel but with gcc you must give it explicitly.

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

Hmm, I just asked because I saw this: icc wikipedia.

I followed the default steps in the installation process. I also listed what my folder contains. So what should I do now, in order to compile an example in order to test if MKL is OK? Remember that I am interested in a distributed environment, when the time to develop my code with the help of MKL comes. There are several blank lines in your post Tim, maybe it would be nice to remove them.

Since I am stuck, until you answer, I made a desperate action: I extracted "tests_cluster.tgz" and then I tried to run an example, but it failed:

gsamaras@pythagoras:~/Desktop/mkl/mkl/tests/scalapack$ make run
(cd ./source; make arch=intel64 interface=lp64 libtype=static mpi=intelmpi mpidir="" libdir="/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/../../lib/intel64" compiler=intel opt=noopt mpirunopts="-np 4" thr=sequential slu.txt dlu.txt clu.txt zlu.txt sdblu.txt ddblu.txt cdblu.txt zdblu.txt sdtlu.txt ddtlu.txt cdtlu.txt zdtlu.txt sgblu.txt dgblu.txt cgblu.txt zgblu.txt sllt.txt dllt.txt cllt.txt zllt.txt spbllt.txt dpbllt.txt cpbllt.txt zpbllt.txt sptllt.txt dptllt.txt cptllt.txt zptllt.txt sinv.txt dinv.txt cinv.txt zinv.txt sqr.txt dqr.txt cqr.txt zqr.txt sls.txt dls.txt cls.txt zls.txt shrd.txt dhrd.txt chrd.txt zhrd.txt strd.txt dtrd.txt ctrd.txt ztrd.txt sbrd.txt dbrd.txt cbrd.txt zbrd.txt ssep.txt dsep.txt csep.txt zsep.txt sgsep.txt dgsep.txt cgsep.txt zgsep.txt ssvd.txt dsvd.txt snep.txt dnep.txt cnep.txt znep.txt cevc.txt zevc.txt ssyevr.txt dsyevr.txt cheevr.txt zheevr.txt shseqr.txt dhseqr.txt )
make[1]: Entering directory '/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/source'
( cd LIN ; mkdir -p ../../_results/_intel64_lp64_static_intelmpi_intel_noopt_sequential ; make arch=intel64 interface=lp64 libtype=static mpi=intelmpi mpidir="" libdir="/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/../../lib/intel64" compiler=intel opt=noopt mpirunopts="-np 4" thr=sequential ../../_results/_intel64_lp64_static_intelmpi_intel_noopt_sequential/slu.exe )
make[2]: Entering directory '/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/source/LIN'
mkdir -p obj_intel64_lp64_static_intelmpi_intel_noopt_sequential ; mpiifort  -nocompchk -c -w -u -O0 psludriver.f -o obj_intel64_lp64_static_intelmpi_intel_noopt_sequential/psludriver.o 
/bin/sh: 1: mpiifort: not found
makefile:202: recipe for target 'obj_intel64_lp64_static_intelmpi_intel_noopt_sequential/psludriver.o' failed
make[2]: *** [obj_intel64_lp64_static_intelmpi_intel_noopt_sequential/psludriver.o] Error 127
make[2]: Leaving directory '/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/source/LIN'
makefile:255: recipe for target 'slu.exe' failed
make[1]: *** [slu.exe] Error 2
make[1]: Leaving directory '/home/gsamaras/Desktop/mkl/composer_xe_2015.3.187/mkl/tests/scalapack/source'
makefile:163: recipe for target 'run' failed
make: *** [run] Error 2

Since I am actually searching for a beginner's tutorial of how to use MKL+ScaLAPACK, I came across this: How to Use Intel® Math Kernel Library ScaLAPACK library on Intel® Xeon Phi™ Coprocessors, which states that I need the compiler of Intel. However, it may be needed for that Coprocessor, which I do not think interests me, at least at this point.

0 Kudos
TimP
Honored Contributor III
3,359 Views

If you insist on running mpi without Ifort or Intel mpi, you must check the documentation of your mpi and the mkl link advisor. Typically the wrapper is named mpif90 and mkl offers libraries for certain versions of gfortran and other mpi implementations. At the very least you would need to quote your gfortran and mpi versions if asking for help along those lines.

 

 

0 Kudos
Georgios_S_
New Contributor II
3,359 Views

Tim sorry if my post was not good. I am OK in using whatever tool of Intel I need to (like the compiler you mentioned), but I am not sure what I need to download/install in order to use MKL's ScaLAPACK. So, what I am asking for in this stage is how to actually set up my system in ordet to use the library. I couldn't find any relevant tutorial.

0 Kudos
TimP
Honored Contributor III
2,501 Views

The build script you are trying is clearly set up for the combination of Ifort, Intel mpi, and mkl. If you installed the intel64 components of parallel studio cluster edition and sourced the mpivars and compilervars scripts, those tools would be active.  If there is no read me file to that effect in the test case, it seems an unfortunate omission. 

0 Kudos
Reply