KnowHow

技術的なメモを中心にまとめます。
検索にて調べることができます。

SLURMからのANSYSモジュールファイル読みこみについて。

登録日 :2024/05/28 04:32
カテゴリ :SLURM

ANSYSのモジュールファイルを/usr/share/Modules/modulefiles/に配置しておけば、SLURMにてmodule load ANSYS/2024R1 で読み込めるということでしょうか?

/usr/share/Modules/modulefiles/にANSYSのモジュールファイルを配置しておけば、SLURMのジョブスクリプト内でmodule load ANSYS/2024R1とすることでそのモジュールを読み込むことができます。ただし、いくつかの前提条件と確認事項があります:

前提条件と確認事項

モジュール管理システムのインストール:

環境モジュールシステム(Modules、Lmodなど)がインストールされており、正しく動作していることを確認してください。
モジュールファイルの内容:

モジュールファイルの内容が正しいことを確認してください。以下のような基本的な内容が含まれていることが必要です:

#%Module1.0#####################################################################
##
## ANSYS module file
##
## 

proc ModulesHelp { } {
    puts stderr "This module loads ANSYS 2024R1 environment"
}

module-whatis "Load ANSYS 2024R1 environment"

# Set ANSYS installation path
setenv ANSYS_HOME /opt/ansys/2024R1
prepend-path PATH $env(ANSYS_HOME)/bin
prepend-path LD_LIBRARY_PATH $env(ANSYS_HOME)/lib

# Load dependent modules
module load mpi/openmpi-x86_64

# Set license server information
setenv ANSYSLMD_LICENSE_FILE 1055@licenseserver.domain

# Additional environment settings
setenv ANSYS_TEMP_DIR /scratch/$USER/ansys_temp
setenv ANSYS_USE_GPU true

モジュールディレクトリのパス:

/usr/share/Modules/modulefiles/ディレクトリがModulesシステムのモジュールパスとして認識されていることを確認します。このディレクトリはデフォルトで設定されている場合が多いですが、環境設定に応じて確認が必要です。

module use /usr/share/Modules/modulefiles

モジュールの確認:

モジュールが正しく配置されているかを確認するために、module availコマンドを使用します。

module avail

SLURMジョブスクリプトの記述:

ジョブスクリプト内で正しくモジュールをロードするために、以下のように記述します:

#!/bin/bash
#SBATCH --job-name=ansys_job
#SBATCH --output=ansys_job.out
#SBATCH --error=ansys_job.err
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=16

module load ANSYS/2024R1

# ここにANSYSの実行コマンドを記述します

まとめ

適切に設定されたモジュールファイルを/usr/share/Modules/modulefiles/に配置することで、SLURMジョブスクリプト内でmodule load ANSYS/2024R1コマンドを使用してANSYS環境をロードすることができます。これにより、ユーザーは簡単に必要なソフトウェア環境を設定できるようになります。

他のバージョンを選ぶにはどうしたらいいのですか?

他のバージョンのANSYSを選んでロードするためには、モジュール管理システムで使用可能なバージョンを確認し、指定したバージョンをロードする必要があります。以下の手順で実行できます:

1. 使用可能なモジュールの確認

まず、システムにインストールされているすべてのANSYSバージョンを確認します。これにはmodule availコマンドを使用します。

module avail ANSYS

このコマンドを実行すると、使用可能なANSYSバージョンの一覧が表示されます。例えば、以下のような出力が得られるかもしれません:

-------------------- /usr/share/Modules/modulefiles --------------------
ANSYS/2023R1   ANSYS/2024R1   ANSYS/2022R2

2. 特定のバージョンのロード

特定のバージョンをロードするには、module loadコマンドにバージョン番号を指定します。例えば、ANSYS 2023 R1をロードするには以下のコマンドを使用します。

module load ANSYS/2023R1

3. ジョブスクリプト内でのバージョン指定

SLURMのジョブスクリプト内で特定のバージョンをロードするには、以下のように記述します。

#!/bin/bash
#SBATCH --job-name=ansys_job
#SBATCH --output=ansys_job.out
#SBATCH --error=ansys_job.err
#SBATCH --time=01:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=16

module load ANSYS/2023R1

# ここにANSYSの実行コマンドを記述します

まとめ

module avail ANSYSを使って利用可能なANSYSバージョンを確認。
module load ANSYS/バージョンで特定のバージョンをロード。
ジョブスクリプト内でも同様の方法でバージョンを指定。
これにより、必要に応じて異なるバージョンのANSYSを使用することができます。