Environment Modules

Abstract

Environment Modulesとは何かを一言で言うと、使うソフトウェア等のバージョンを切り替えるためのツール。gccのバージョンを切り替えるのに、PATHLD_LIBRARY_PATHなどの環境変数を都度編集して使用するのは面倒。ここで、Environment Modulesはソフトウェアのバージョン切替に必要な設定などを自動で行ってくれる。

Environment Modulesでは、例えば

$ module load gcc/XX

とするだけで、gccのバージョンXXを使うのに必要な環境変数が設定される。

コマンド 説明
module avail システムに用意されているモジュールの一覧を表示する
module load モジュールを現在の環境に組み込む
module list ロードされたモジュールの一覧を表示する
module unload ロード済みのモジュールを環境から外す

ログイン時の自動組み込み

ログイン時にモジュールが自動的に組み込まれるようにするには、.bashrcや.cshrcなどの環境設定ファイルを使用する。例えば、ログインシェルにbashを使用している場合は、ユーザーのホームディレクトリにある~/.bashrcファイルに以下のようにmoduleのロードコマンドを組み込む。

# if the module command is defined, $MODULEPATH will be set

if [ -n $MODULEPATH ]; then
    module load module_name
fi

設定例

こちらを参考にする:

Intel OneAPIでは、自動的にEnvironment Modulesのセットアップを行うスクリプトが用意されている為、こちらを使用する。

参考