If you’re a Sherlock user who often needs to load specific module versions, but don’t care or can’t remember specific minor version numbers, you’re in luck!
Starting today, Sherlock allows loading modules via an extended default system which will automatically load the best available version, based on what users request.
Too many versions
There are too many version numbers to remember. For instance, take CUDA:
ml av cuda --------------- devel -- compilers, MPI, languages, libs --------------- cuda/8.0.61 (g) cuda/9.2.148 (g) cuda/9.0.176 (g,D) cuda/10.0.130 (g) cuda/9.1.85 (g) cuda/10.1.105 (g) cuda/9.2.88 (g) Where: g: GPU support D: Default Module
There are a number of versions of the CUDA module, that follow the semantic versioning scheme of
major.minor.patch version numbers.
This is great, but in practice, most of us only care about the
major version number. Sometimes
major.minor, but mostly, we just want to get the latest
patch version. Without having to look it up, let alone remember it.
Enter extended defaults, a new module mechanism to simplify all of this.
Starting now, you can simply load a module using its major version number, and you’ll get the best module that matches your request.
will automatically load
If you want to specific a minor version, but don’t care about the patch number, you can too:
Finally, if you don’t specify any version at all, the highest version number will automatically be loaded, unless a default is defined (noticeable with the
D flag in
ml av output) which will be used instead.
We hope this will make things easier, and if you have any question, don’t hesitate to reach out at firstname.lastname@example.org
Did you like this update?