Hi Juha,
On 01/09/14 10:18, Juha Lento wrote:
Hi Alan and Petar,
Thanks! I tried building ictce-toolchain. I wrote module and .eb files
for icc, ifort, impi and imkl and succeeded to install ictce toolchain
without actually re-installing the components. Unfortunately, when
trying to use this ictce toolchain (to build JasPer library),
EasyBuild (EB) complained about missing interface library
fftw3xc_intel_pic. I guess this is something that is not installed by
default when running Intel's ./install.sh, but an EB extra.
Indeed, we build the FFTW wrappers when installing Intel MKL, which is
not done standard.
EasyBuild hard checks whether everything it expects to be there is
actually there.
If you care enough, you can define your own Intel-based toolchain
(basically copy-paste-edit of an existing toolchain), and simply exclude
the IntelFFTW part...
See
https://github.com/hpcugent/easybuild/wiki/Compiler-toolchains#python-module-for-toolchain
for more information on that.
In the upcoming EasyBuild v1.15, creating module files for existing
installations will be easier, since we're removing the hard requirement
that the 'conflict' line matches with the software name in
https://github.com/hpcugent/easybuild-framework/pull/1017 .
Since different software packages can usually be build/installed with
varying options (leading to different libraries), interfacing EB
toolchains with components not build using EB, may be quite hard in
general. If one really needs to this properly, it probably has to be
done by editing the easybuild blocks icc.py, and maybe make a
separate, "almost duplicate" of the existing install tree. That
requires a lot of time and effort. Likely a lot easier option is to
contact the person who has the Intel tar-balls for the compilers, MPI
and MKL, borrow the sources and install all the components using EB.
I'll try that next :)
I would recommend this, since EB will not only install the components,
but also check a couple of things.
Petar, I'm interested to see how Cray environment is supported! What
is the current status of the Cray support and when are you planning
the release?
Petar, maybe you can share an update on this during the EasyBuild conf
call tomorrow?
See https://github.com/hpcugent/easybuild/wiki/Conference-calls.
regards,
Kenneth
Juha
------------------------------------------------------------------------
*From: *"Alan O'Cais" <[email protected]>
*To: *[email protected]
*Sent: *Friday, 29 August, 2014 2:03:02 PM
*Subject: *Re: [easybuild] Using EasyBuild on top of existing
module environment and software
Hi Juha,
I do this for a particular MPI version we use here. Within a
hierarchical module naming scheme (HMNS), it's a little extra work
because you have to create EasyBuild compatible modules and also
"pseudo" easyconfigs so that EB can figure out where things go in
the hierarchy.
As an example, here what I added to the existing MPI module to
make it EB-compatible:
# Fool EasyBuild that this is an EB module
setenv EBROOTMPICH2 ${mpi_home}
setenv EBVERSIONMPICH2 Parastation-5.0.27
conflict MPICH2
# Need to add to the hierarchy when loading the MPI version
module use
/usr/local/eb/hierarchical/installed/modules/all/MPI/GCC/4.9.1/MPICH2/Parastation-5.0.27
and here's the corresponding pseudo-easyconfig:
# This file is a dummy as I'm using the system installed MPICH2
name = 'MPICH2'
version = "Parastation-5.0.27"
homepage = 'http://www.par-tec.com/products/parastation-mpi.html'
description = """ParaStation MPI provides a standard interface for
parallel applications that require either MPI or MPI-2 library
functionality. """
toolchain = {'name': 'GCC', 'version': '4.9.1'}
moduleclass = 'mpi'
As it stands there's no automatic method for this, you have to
separate compiler from toolchain for the HMNS to work, so you will
be forced into faking it for the compiler, MPI and math libraries
separately. It takes a little understanding but is very do-able.
Alan
On 29 August 2014 11:43, Juha Lento <[email protected]
<mailto:[email protected]>> wrote:
I would like to use EasyBuild to install application level
software stack on two systems, one "regular" PC cluster, and
one Cray XC30 system. I would like to use the compilers, MPI
libraries and math libraries that are already installed on the
machines as the toolchain. What would be the best approach to
use EasyBuild framework in this kind of situation?
Best regards,
Juha
--
Dr. Alan O'Cais
Application Support
Juelich Supercomputing Centre
Forschungszentrum Juelich GmbH
52425 Juelich, Germany
Phone: +49 2461 61 5213
Fax: +49 2461 61 6656
E-mail: [email protected] <mailto:[email protected]>
WWW: http://www.fz-juelich.de/jsc/
------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher
Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt
------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------