コンテンツにスキップ

Environment Modules

システムHでは、ソフトウェアで挙げた、さまざまな開発環境、MPI、ライブラリ、ユーティリティ等を提供しています。利用者はこれらのソフトウェアを「モジュール」として、組み合わせて利用できます。

Environment Modulesは、これらのモジュールを利用するのに必要な環境設定を柔軟かつ動的に行う機能を提供します。

利用方法

利用者は、moduleコマンドを用いて環境の設定を行えます。

$ module [options] <sub-command> [sub-command options]

以下にサブコマンドの一覧を示します。

サブコマンド 説明
list ロード済みのモジュールの一覧表示
avail 利用可能なモジュールの一覧表示
show module moduleの設定内容の表示
load module moduleのロード
unload module moduleのアンロード
switch moduleA moduleB モジュールの切り替え(moduleAmoduleBに置き換える)
purge ロード済みのすべてのモジュールをアンロード(初期化)
help module moduleの使用方法の表示

実行例

モジュールのロード

[username@qes01 ~]$ module load cuda/12.6/12.6.2 cudnn/9.8/9.8.0

ロード済みのモジュールの一覧表示

[username@qes01 ~]$ module list
Currently Loaded Modulefiles:
 1) cuda/12.6/12.6.2   2) cudnn/9.8/9.8.0

モジュールの設定内容の表示

[username@qes01 ~]$ module show cuda/12.6/12.6.2
-------------------------------------------------------------------
/apps/modules/modulefiles/rhel9/gpgpu/cuda/12.6/12.6.2:

module-whatis   {cuda 12.6.2}
conflict        cuda
prepend-path    CUDA_HOME /apps/cuda/12.6.2
prepend-path    CUDA_PATH /apps/cuda/12.6.2
prepend-path    PATH /apps/cuda/12.6.2/bin
prepend-path    LD_LIBRARY_PATH /apps/cuda/12.6.2/extras/CUPTI/lib64
prepend-path    LD_LIBRARY_PATH /apps/cuda/12.6.2/lib64
prepend-path    CPATH /apps/cuda/12.6.2/extras/CUPTI/include
prepend-path    CPATH /apps/cuda/12.6.2/include
prepend-path    LIBRARY_PATH /apps/cuda/12.6.2/lib64
prepend-path    MANPATH /apps/cuda/12.6.2/doc/man
-------------------------------------------------------------------

ロード済みのすべてのモジュールをアンロード(初期化)

[username@qes01 ~]$ module purge
[username@qes01 ~]$ module list
No Modulefiles Currently Loaded.

依存関係のあるモジュールのロード

[username@qes01 ~]$ module load cudnn/9.8/9.8.0
WARNING: cudnn/9.8/9.8.0 cannot be loaded due to missing prereq.
HINT: at least one of the following modules must be loaded first: cuda/12.6

Loading cudnn/9.8/9.8.0
  ERROR: Module evaluation aborted

依存関係があるため、cuda/12.6のモジュールを先にロードしないとcudnn/9.8/9.8.0をロードできません。

[username@qes01 ~]$ module load cuda/12.6/12.6.2
[username@qes01 ~]$ module load cudnn/9.8/9.8.0