2021.11.26
以下のコマンドで取得可能です。ジョブスクリプトの最後で実行してください。
$ nvidia-smi --query-accounted-apps=timestamp,gpu_name,gpu_bus_id,gpu_serial,gpu_uuid,vgpu_instance,pid,time,gpu_util,mem_util,max_memory_usage --format=csv
出力例は以下のとおりです。最後に記載されている523MiBがGPUで使用した最大メモリサイズです。
2021/11/24 19:26:26.333, A100-SXM4-40GB, 00000000:27:00.0, 1564720026417, GPU-a3b25bed-7bb1-cbd8-89e3-3f14b6118874, N/A, 761279, 117202 ms, 2 %, 0 %, 523 MiB
ジョブクラス「SQUID-S」を使用している場合は、同じノード内で別の方のジョブが実行されている場合があるため、正しい値が取得されない可能性があります。予めご了承ください。
2021.11.08
ご自身でインストールすることで、利用可能です。手順は以下のとおりです。
python venvを使用する
インストール手順
|
# Python+GPUのEnvironmental modulesを設定する module load BasePy module --force switch python3/3.6 python3/3.6.GPU module load BaseGPU module load cudnn/8.2.0.53 #Pytorchをインストールする仮想環境 test-envを作成し、Activateする python3 -m venv /sqfs/work/【グループ名】/【ユーザ名】/test-env/ source /sqfs/work/【グループ名】/【ユーザ名】/test-env/bin/activate # SQUIDのGPUノード(A100)に対応するCUDA11.1 + Pytorchをインストール pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html |
利用手順(ジョブスクリプト例)
|
#!/bin/bash #PBS -q SQUID #PBS --group=(グループ名) #PBS -l elapstim_req=1:00:00,gpunum_job=8 cd $PBS_O_WORKDIR module load BasePy module --force switch python3/3.6 python3/3.6.GPU module load BaseGPU module load cudnn/8.2.0.53 source /sqfs/work/【グループ名】/【ユーザ名】/test-env/bin/activate python test.py |
mini-forgeを使用する
まず以下のページを参考にminiforgeをインストールしてください。
miniforgeのインストール・使い方(SQUID)
次に、以下を参考にPytorchをインストールしてください
|
# miniforge仮想環境の作成準備 conda config --add envs_dirs /sqfs/work/(グループ名)/(利用者番号)/conda_env conda config --add pkgs_dirs /sqfs/work/(グループ名)/(利用者番号)/conda_pkg #Pytorchをインストールする仮想環境 test-envを作成し、Activateする conda create --name test-env python=3.8 conda activate test-env # SQUIDのGPUノード(A100)に対応するCUDA11.1 + Pytorchをインストール conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge |
1ノードでの利用手順(ジョブスクリプト例)
|
#!/bin/bash #PBS -q SQUID #PBS --group=(グループ名) #PBS -l elapstim_req=1:00:00,gpunum_job=8 cd $PBS_O_WORKDIR conda activate test-env python test.py |
2ノードでの利用手順(ジョブスクリプト例)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#!/bin/bash #PBS -q SQUID #PBS --group=(グループ名) #PBS -b 2 #PBS -l gpunum_job=8 #PBS -l elapstim_req=01:00:00 cd $PBS_O_WORKDIR source ~/.bashrc conda activate test-env echo "===================" MASTER_NODE=`head -1 ${PBS_NODEFILE}` USE_PORT=12321 HOSTNAME=`hostname -s` echo "-------------------" echo "HOSTNAME =[${HOSTNAME}] MASTER_NODE=[${MASTER_NODE}] USE_PORT=[${USE_PORT}]" echo "===================" python -m torch.distributed.launch --nnodes=2 --nproc-per-node=8 --rdzv-id=100 --rdzv-backend=c10d --rdzv-endpoint=${MASTER_NODE}:${USE_PORT} test.py |