-
Notifications
You must be signed in to change notification settings - Fork 144
Conference call notes 20170510
Kenneth Hoste edited this page May 10, 2017
·
1 revision
(back to Conference calls)
Notes on the 76th EasyBuild conference call, Wednesday May 10th 2017 (5pm - 6pm CET)
Alphabetical list of attendees (6):
- Damian Alvarez (JSC, Germany)
- Fotis Georgatos (Illumina, UK)
- Kenneth Hoste (HPC-UGent, Belgium)
- Bart Oldeman (McGill University, Canada)
- Alan O'Cais (JSC, Germany)
- Davide Vanzo (Vanderbilt University)
- outlook to EasyBuild v3.2.1 (bugfix/update release) & beyond (early outlook to EasyBuild v3.3.0)
- how to deal with modules being loaded manually before running EasyBuild
- make specifying checksums mandatory
- EasyBuild/Singularity integration
- Q&A
-
EasyBuild v3.2.1 by end of this week
- mostly motivated by bug fix in framework,
%
character in description breaks module generation - also will include:
- support for installing Siesta (thanks Åke & Miguel!)
- whole bunch of software updates + easyconfig for some new software
- mostly motivated by bug fix in framework,
-
EasyBuild v3.3.0
- ETA mid-June
- several enhancements to framework are already lined up
- Python installation was failing for Davide because wrong ncurses was being picked up (from Core/ rather than Compiler/)
- cfr. https://github.com/hpcugent/easybuild-easyconfigs/issues/4049
- actual problem was that GCC/5.4.0-2.26 module was loaded before running
eb
- this lead to wrong order in
$MODULEPATH
, which lead to wrong ncurses being picked up - old issue about warning about loaded modules: https://github.com/hpcugent/easybuild-framework/issues/153
- feedback on idea in https://github.com/hpcugent/easybuild-framework/issues/153#issuecomment-300244043
-
purge
may be too intrusive, especially when certain modules are loaded like GC3Pie - purge+reload may load different modules, is that a concern?
- order of modules has to be correct
-
- default should be to purge any non-whitelisted modules, but that breaks backwards compatibility, strictly speaking
- so just
warn
for now as default, and move towarn,purge
for EasyBuild v4.0? - a
purge
may unload other modules that should be loaded- big problem on Cray systems,
module purge
is a back no-no there...
- big problem on Cray systems,
- so, smarter way of unloading modules that shouldn't be there is needed?
- unload anything not white-listed?
- how do you detect that the set of modules loaded is not 'clean'
- can we come up with a decent default whitelist for Cray PrgEnv?
- so just
- soft enforcing of checksums via Travis style check done for contributions?
- also helps with avoiding collisions on download
- care will be need to be taken to avoid situations like happened with Homebrew/Handbrake:
- won't this further block incoming contributions?
- for all contributions, a 3rd party should 'vet' the checksums?
- checksums are a great help with detecting corrupted downloads (due to upstream problems, corrupted files, ...)
- also, which checksum mechanism should we use?
- MD5 is no longer considered safe?
-
sha256
should be used now (cfr. Homebrew)?
- verifying of checksum should be optional, should be disabled by request
- enhance
--new-pr
to auto-inject checksums (if sources are available)? - Damian: implement this gradually, only enforce on new contributions for now?
- change default to
sha256
?-
sha256
is not supported yet now as checksum mechanism - Travis should also enforce using
sha256
as checksums - can we auto-detect whether provided checksum is MD5 or SHA256?
- e.g. just based on length?
-
- also support
--enforce-checksums
to let EasyBuild enforce the presence of checksums- right now: no checksum, no problem...
- example container for EasyBuild @ https://github.com/pescobar/singularity-easybuild
- easiest way is to use EasyBuild in bootstrap file used to construct container
- size, how to handle modules, etc.
- module could be loaded in startup script, or via default module collection
- modules tool is require anyway for EB
- using MPI with containers is less trivial
- using MPI with Singulary:
mpirun singularity exec foo.img
- MPI inside container needs to connect to MPI in host
- could be done by binding MPI library from host into container
- but what if container also includes an MPI library...
- Alan: tuning of MPI is then still done outside container?
- using MPI with Singulary:
- Fotis: allowed failure rate for changing permissions should be tuneable
- https://github.com/hpcugent/easybuild-framework/issues/2212
- may be included in EasyBuild v3.2.1...