Conference call notes 20160106 - easybuilders/easybuild GitHub Wiki

(back to Conference calls)

Notes on the 42nd EasyBuild conference call, Wednesday January 6th 2016 (5pm - 5.30pm CEST)

Attendees

Alphabetical list of attendees (11):

  • Xavier Besseron (Uni.lu, Luxembourg)
  • Timothy Brown (Uni. of Colorado @ Boulder, US)
  • Pablo Escobar (UniBas, Switzerland)
  • Todd Gamblin (LLNL, US)
  • Fotis Georgatos (freelancer, Belgium)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Lumír Jasiok (IIT4Innovations, Czech Republic)
  • Alan O'Cais (JSC, Germany)
  • Ward Poelmans (FWO/HPC-UGent, Belgium)
  • Robert Schmidt (OHRI, Canada)

Agenda

  • 2016a common toolchains
  • support for RPATH linking
  • support for eb --new-pr (WIP)
  • workaround for issues with Python packages being picked up from the OS
  • open Q&A

Notes

2016a common toolchains
  • GCC 4.9.3 vs 5.3.0 ?
    • GCCcore (both foss & intel) & GCC (foss): same version?
    • known issues with GCC 5.3 and Intel 2016.1
    • Robert: too soon to switch to GCC 5.x, too many issues will pop up
  • Intel compilers 2015.5.223 vs 2016.1.150 ?
  • Fotis: pick versions based on most recent Intel compiler versions that work to build 'common' stuff like Python, Perl, Boost, etc.
    • pick GCC version based on what's officially supported by Intel as a base for Intel compilers
  • Kenneth: at some point, we'll have to make 'the jump' to GCC 5.x (or 6.x) and deal with it
  • follow-up discussion via ML
support for RPATH linking
  • cfr. https://github.com/hpcugent/easybuild-framework/issues/651
    • Kenneth: all info/thoughts/ideas should be streamlined via this issue
    • inspiration: RPATH support in Spack (Todd), linking script used by Swedish sites (via Torben Rasmussen), etc.
    • $LD_LIBRARY_PATH gets preference over RUNPATH, intentionally (not so with RPATH)
    • Alan: RPATH is deprecated officially, RUNPATH is supposed to replace it
    • Todd:
      • deprecation of RPATH means little, it's still the best supported option
      • downside of RUNPATH is that also users can fiddle with $LD_LIBRARY_PATH and breaks things, not so with RPATH
    • Fotis: having the option of overriding the paths 'hardwired' in the binary via RUNPATH using $LD_LIBRARY_PATH is a plus, to provide a way to workaround bugs while avoiding a massive rebuild of all software using a particular library (e.g. MPI)
    • => EB should support enabling both RPATH and RUNPATH as a configuration option
    • Alan: although use of $ORIGIN works in practice, it's not supported officially
      • Todd: not really a concern in practice, all systems of relevance use glibc/ld.so
    • follow-up conf call will be planned via doodle @ ML
support for eb --new-pr/--update-pr (WIP)
  • work in progress, see https://github.com/hpcugent/easybuild-framework/pull/1528
  • will initially only be for easyconfigs, but can be extended to also support PRs for easyblocks and even framework
  • takes care of:
    • all actions required to open a PR: start a branch, stage/commit files, push to GitHub, open PR via GitHub
    • also takes into account policy/guidelines/requirements
      • copies files to right location, with right name
      • PR title like {moduleclass}[toolchain] foo 1.2.3
      • target develop branch
  • trivial setup (provide GitHub username + accompanying token)
  • already works, but has a couple of rough edges that could be trimmed off
    • also support eb --new-pr -x to show PR that would be opened?
  • example PR created via --new-pr: https://github.com/hpcugent/easybuild-easyconfigs/pull/2268
workaround for issues with Python packages being picked up from the OS
  • work-in-progress, see https://github.com/hpcugent/easybuild-easyblocks/pull/786
  • basically: use python -S when installing Python packages on top of system Python
  • also applies to installing EasyBuild with EasyBuild
  • currently breaks installation of other Python packages on top of system Python: GC3Pie, JUBE
other