[oops.... meant to send to the list]
-------- Forwarded Message --------
Subject: Re: [easybuild] Minimal vs full toolchain, Qt, CUDA etc.
Date: Wed, 20 Jun 2018 09:56:06 -0500
From: Jack Perdue <[email protected]>
To: Maik Schmidt <[email protected]>
Howdy Maik,
Here we use a stripped down Python as a builddependency to build:
Qt5-5.10.1-GCCcore-6.4.0-Python-2.7.14-bare.eb
and
Qt5-5.10.1-GCCcore-6.4.0-Python-3.6.3-bare.eb
By default, the full Python needs MPI/maths (for numpy) so
if you build Qt with the regular Python you have to promote
the toolchain. Python-bare just provides the basics.
Works fairly well.
There are other initiatives in EB to clean this up
using Python-core and the like. But this is what
we've been using for now.
As for CUDA.... I wondered the same.... the answer was that
OpenMPI has hooks for CUDA so if you include CUDA early
in the toolchain (while building OpenMPI) then you get
some MPI-enabled CUDA. I/we haven't much experience
with that yet (curious to see what TensorFlow can do) but
that's the reasoning for that (though I do wish it was easier
like you suggest)
As ever, there are examples at:
http://www.siliconslick.com/easybuild/easyconfigs/
See ada and terra.
Jack Perdue
Lead Systems Administrator
High Performance Research Computing
TAMU Division of Research
[email protected] http://hprc.tamu.edu
HPRC Helpdesk: [email protected]
On 06/20/2018 09:21 AM, Maik Schmidt wrote:
Hi, I've been asked by one of our users why Qt5 is built with the full
toolchain (foss or intel) even though it does not really use MPI or
MKL for that matter. I've looked at the dependencies of Qt itself and
apparently he is correct, why is this not GCCcore? There's no reason
to use the full toolchain here, right?
On another note, what has been the reasoning behind introducing an
entire new toolchain only to add CUDA? it really makes not much sense
to me, because then I have to build a lot of duplicate software that
doesn't even need CUDA just to support this toolchain (foss vs
fosscuda)... e.g. why would I need a HDF5 -fosscuda if it is exactly
the same as the -foss version?
The solution with just adding a versionsuffix and CUDA as a dependency
to software requiring it seemed much cleaner to me, but maybe I'm
missing something here...
Thanks for your input,
Maik