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
    
------------------------------------------------------------------------------------------------
    
------------------------------------------------------------------------------------------------



Reply via email to