Skip to content

Conference notes for 2022 11 08

Robert McLay edited this page Nov 10, 2022 · 1 revision

Agenda for Lmod Zoom Mtg Nov. 08, 2022

  • Q/A
  • Discussion on module category
    • see https://github.com/TACC/Lmod/pull/600
    • to what extend can output be controlled from a hook?
      • Lmod has two types of tables:
        • beautiful tables
          • these "go horizontally"
        • column tables (as produced by "ml cat" or "ml" or "ml av")
      • Alan is looking into support for subcategories in hook
        • mostly working, but can't (always?) control order of how subcategories appear in output
  • Renaming master branch to main
  • The sourceforge Git repo has been removed
    • Now only contains a README file that points to GitHub repo
    • Due to problems with mirroring between SourceForge + GitHub
    • Tarball distribution will continue
  • File and Internal changes (to get rid of "master" term in the codebase)
    • Also helps with tab completion in editor (Master vs MasterControl)
    • Changing MasterControl.lua -> MainControl.lua
    • Changing Master.lua -> Hub.lua
    • Internal Change masterTbl() -> optionTbl()
    • Note: masterTbl = optionTbl so that the files SitePackage.lua and /etc/lmod/lmod_config.lua can continue to use masterTbl() to access commandline options. This means that Sites do not have to change to optionTbl().
      • Can't produce a (deprecation) warning when masterTbl is still used since that would be visible to end users of Lmod
  • Should users be allowed to unload dependent modules?
    • see thread on Lmod-users mailing list: https://sourceforge.net/p/lmod/mailman/message/37730407
    • triggered by integrating Lmod into JupyterHub
      • users can load modules through clicking
      • unloading of modules can easily be done accidentally in this context
      • fixing that mistake again is tricky...
    • with depends_on, Lmod actually knows when a required module gets unloaded (since it prints a warning)
      • but there's currently no option to make this an error
    • could be supported through a new "requires" statement, which could be stricter than "depends_on"
      • "requires(Python)" would not allow unloading Python unless Jupyter is unloaded
    • another option could be to have to add a configure option to Lmod to make "depends_on" more strict
      • something like LMOD_DEPENDS_ON_UNLOAD=warning vs LMOD_DEPENDS_ON_UNLOAD=error (or 'strict'?)
    • things get complex with depends_on in a hierarchy
    • with depends_on: if gnuplot is loaded directly by the user, it's not considered a dependency by Lmod
      • so unloading Octave (which depends on gnuplot) would not trigger an unload of gnuplot
    • Lmod could perhaps also support automatically unloading of modules that depend on what's being unloaded
      • for example unload TensorFlow if Python gets unloaded
  • Presentation "How Lmod processes TCL modulefiles"

Attendees

  • Robert McLay (TACC)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Alex Domingo (Vrije Universiteit Brussel, Belgium)
  • Danilo González (HPCNow!)
  • Dan Green (NC State Univ.)
  • Alan O'Cais (CECAM/University of Barcelona)
  • Raj Ayyampalayam (University of Georgia)
  • Google Pixel 6a (?)
  • mk (?)
  • Matthew Cawood (TACC)

Next meeting

  • Tue 6 Dec 2022 at 09:30 US Central / 15:30 UTC
Clone this wiki locally