I've tried to understand how EasyBuild handles the Intel compiler toolchain, and despite the apparent lack of documentation, I've made some progress as documented in our Wiki:
https://wiki.fysik.dtu.dk/niflheim/EasyBuild_modules#intel-compiler-toolchain

Apparently one must download the ICC, IFORT and MKL tar-balls separately from Intel and copy them to the ~/sources/ixxx subdirectories. In this way I've successfully built the modules:
icc/2016.3.210-GCC-5.4.0-2.26
ifort/2016.3.210-GCC-5.4.0-2.26

Unfortunately the MKL (imkl) module presents a problem: All the existing .eb files assume that some MPI framework is being used by MKL. At our site we don't have "IntelĀ® Parallel Studio XE 2016 Cluster Edition" which contains Intel MPI.

We just want to use MKL with the ICC or IFORT compilers on a single node.

Question: How may we build an MKL module without any MPI stuff?

I've experimented with some of the imkl*.eb files, but the building process always crashes when the building process wants to use mpicc or whatever.

Thanks for sharing your insights.

/Ole

On 07/19/2016 04:19 PM, Ole Holm Nielsen wrote:
I'm just getting started with EasyBuild, so excuse my limited
experience.  I would like to install some versions of the Intel compiler
toolchains as dependencies for other packages.  We do have valid
licenses for the Intel compilers, and they work well in our old
environment modules system.

I've searched in vain for any kind of documentation on how to install
the Intel compilers with EasyBuild.  The expected EasyBuild command
fails because I haven't provided the tar-balls from Intel:

$ eb intel-2016b.eb -r
== temporary log file in case of crash /tmp/eb-Zq7KyT/easybuild-Jnxhw0.log
== resolving dependencies ...
== processing EasyBuild easyconfig
/home/opt/modules/software/EasyBuild/2.8.2/lib/python2.7/site-packages/easybuild_easyconfigs-2.8.2-py2.7.egg/easybuild/easyconfigs/i/icc/icc-2016.3.210-GCC-5.4.0-2.26.eb

== building and installing icc/2016.3.210-GCC-5.4.0-2.26...
== fetching files...
== FAILED: Installation ended unsuccessfully (build directory:
/home/opt/modules/build/icc/2016.3.210/dummy-dummy-GCC-5.4.0-2.26):
build failed (first 300 chars): Couldn't find file
parallel_studio_xe_2016_composer_edition_for_cpp_update3.tgz anywhere,
and downloading it didn't work either... Paths attempted (in order):
/home/opt/modules/software/EasyBuild/2.8.2/lib/python2.7/site-packages/easybuild_easyconfigs-2.8.2-py2.7.egg/easybuild/easyconfigs/i/icc/i/ic

== Results of the build can be found in the log file(s)
/tmp/eb-Zq7KyT/easybuild-icc-2016.3.210-20160719.160648.OQPZr.log
ERROR: Build of
/home/opt/modules/software/EasyBuild/2.8.2/lib/python2.7/site-packages/easybuild_easyconfigs-2.8.2-py2.7.egg/easybuild/easyconfigs/i/icc/icc-2016.3.210-GCC-5.4.0-2.26.eb
failed (err: "build failed (first 300 chars): Couldn't find file
parallel_studio_xe_2016_composer_edition_for_cpp_update3.tgz anywhere,
and downloading it didn't work either... Paths attempted (in order):
/home/opt/modules/software/EasyBuild/2.8.2/lib/python2.7/site-packages/easybuild_easyconfigs-2.8.2-py2.7.egg/easybuild/easyconfigs/i/icc/i/ic")


Question: Can anyone provide documentation on what to do with the Intel
tar-balls so that the EasyBuild command "eb" will work correctly?

BTW, the latest tar-ball I downloaded from Intel is named:
   parallel_studio_xe_2016_composer_edition_update3.tgz
which doesn't match EasyBuild's search name:
   parallel_studio_xe_2016_composer_edition_for_cpp_update3.tgz

Thanks,
Ole

Reply via email to