Skip to content

Conference notes for 2022 02 08

Robert McLay edited this page Feb 28, 2022 · 1 revision

Agenda for 2022-02-08

  • Q&A
  • How to provide module properties to isVisible Hook
  • Future Topics

Attendees

  • Robert McLay (TACC, US)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Kurt Lust (Univ. of Antwerp (Belgium) + LUMI User Support Team)
  • Ward Poelmans (HPC-VUB, Belgium)
  • Åke Sandgren (Umeå Univ, Sweden)

How to provide module properties to isVisible Hook

  • slides: https://github.com/TACC/Lmod/blob/master/my_docs/22/lmod_zoom_mtg_2022_02_08/presentation.pdf
  • ModuleTable is uuencoded (base64) to not worry about quoting
    • also broken up into 256-char blocks (mostly because of limits in csh)
    • Lmod does the same things internally across all shells (to simplify things)
  • read ModuleTable currently stored in environment via ml --mt (ml -mt would be unloading module named mt)
  • ModuleTable is also stored in FrameStk to support break statements
  • wV entry in ModuleTable is "weighted version"
    • inspired by LooseVersion in Python
  • MTversion is version of ModuleTable format (important for saved module collections)
  • while in load_hook
    • load_hook is triggered after loading of module is done in FrameStk
    • changes made to environment by module being loaded are also present in current environment
    • ModuleTable on top of stack reflects state after loading that module
    • ModuleTable stored in environment is not updated yet, that is only done after loading of module is complete (so after triggering of load_hook)

Q&A

Future topics

  • mname: going from user-provided name to a file that's associated with it
  • walkthrough of Lmod internal workings: tracing how a module load command is processed?

Next meeting

  • Next meeting (Tue 1 Mar 2022 - 15:30 UTC)
  • Topic: Lmod Testing System
  • likely significantly longer than previous calls (>1h)
Clone this wiki locally