Mii
Un moteur de recherche intelligent pour les environnements modulaires.
Mii works around an existing modules installation, efficiently searching and loading modules on-demand for users.
Once Mii is loaded, modules will be quietly autoloaded for any unambiguous commands. Ambiguous commands will interactively ask for modules to load.
It features:
- Support for Lmod and Environment Modules installations
- bash and zsh shell integration
- Module listing / individual information (via mii list, mii show)
- Searching for exact commands (via mii exact)
- Searching for similar commands (via mii search)
- Optional JSON export format
A module that is autoloaded does not persist after the command. The shell environment will be the same as it was before mii autoloaded a module.
Activation
Chargez et activez avec la commande
[name@server ~]$ module load mii
Une fois chargé, Mii émet des suggestions. Par exemple, si une commande est introuvable, Mii suggère
[name@server ~]$ cmd
[mii] cmd not found! Similar commands: "cmp", "cmp", "dcmd"
Commandes non ambigües
Une commande ou un binaire qui est connu et non ambigu sera chargé automatiquement.
[name@server ~]$ python3.9 --version
[mii] loading StdEnv/2020 python/3.9.6 ...
Python 3.9.6
Commandes ambigües
Si une commande ou un binaire n'est pas connu ou est ambigu, Mii suggère des candidats potentiels en se basant sur leur pertinence.
[name@server ~]$ blastn -version
[mii] Please select a module to run blastn:
MODULE PARENT(S)
1 blast+/2.12.0 StdEnv/2020 gcc/9.3.0
2 blast+/2.11.0 StdEnv/2020 gcc/9.3.0
3 blast+/2.10.1 StdEnv/2020 gcc/9.3.0
4 rmblast/2.10.0 StdEnv/2020 gcc/9.3.0
5 blast+/2.10.1 nixpkgs/16.09 gcc/7.3.0
6 blast+/2.10.0 nixpkgs/16.09 gcc/7.3.0
7 blast+/2.9.0 nixpkgs/16.09 gcc/7.3.0
8 blast+/2.8.1 nixpkgs/16.09 gcc/7.3.0
9 blast+/2.7.1 nixpkgs/16.09 gcc/7.3.0
10 blast+/2.4.0 nixpkgs/16.09 gcc/7.3.0
11 igblast/1.9.0 nixpkgs/16.09 gcc/7.3.0
12 rmblast/2.9.0 nixpkgs/16.09 gcc/7.3.0
13 blast+/2.6.0 nixpkgs/16.09 gcc/5.4.0
14 igblast/1.9.0 nixpkgs/16.09 gcc/5.4.0
15 igblast/1.8.0 nixpkgs/16.09 gcc/5.4.0
16 igblast/1.7.0 nixpkgs/16.09 gcc/5.4.0
17 rmblast/2.6.0 nixpkgs/16.09 gcc/5.4.0
18 igblast/1.8.0 nixpkgs/16.09 gcc/4.8.5
Make a selection (1-18, q aborts) [1]: 1
[mii] loading StdEnv/2020 gcc/9.3.0 blast+/2.12.0 ...
Lmod is automatically replacing "intel/2020.1.217" with "gcc/9.3.0".
Due to MODULEPATH changes, the following have been reloaded:
1) openmpi/4.0.3
blastn: 2.12.0+
Package: blast 2.12.0, build Sep 27 2021 15:23:34
Dans cet exemple, nous avons entré le chiffre 1 à l'invite Make a selection et la commande s'est exécutée.
Recherche
Vous pouvez chercher des binaires pour obtenir la liste des modules qui les offrent. Les résultats sont présenté dans l'ordre de leur pertinence.
[name@server ~]$ mii search pgc+
Results for "pgc+": (total 16)
MODULE COMMAND PARENT(S) RELEVANCE
nvhpc/20.7 pgcc StdEnv/2020 high
nvhpc/20.7 pgc++ StdEnv/2020 high
pgi/19.4 pgcc nixpkgs/16.09 high
pgi/19.4 pgc++ nixpkgs/16.09 high
pgi/17.3 pgc nixpkgs/16.09 high
pgi/17.3 pgcc nixpkgs/16.09 high
pgi/17.3 pgc++ nixpkgs/16.09 high
pgi/16.9 pgc nixpkgs/16.09 high
pgi/16.9 pgcc nixpkgs/16.09 high
pgi/16.9 pgc++ nixpkgs/16.09 high
pgi/13.10 pgc nixpkgs/16.09 high
pgi/13.10 pgcc nixpkgs/16.09 high
pgi/13.10 pgc++ nixpkgs/16.09 high
pgi/13.10 pgCC nixpkgs/16.09 high
gcccore/.9.3.0 gcc StdEnv/2020 medium
gcccore/.9.3.0 g++ StdEnv/2020 medium
Disabling Mii
To disable mii:
[name@server ~]$ mii disable
Re-enabling
To re-enable mii:
[name@server ~]$ mii enable