D3 Center, The University of Osaka » 分類 » 計算実行
2024.04.23

SQUIDベクトルノード群で特定のサブルーチンのみをVHで計算したい

特定のサブルーチンに対してVH CALLを使用することで、VHでの計算が可能です。詳細な手順は以下のAurora Forumに掲載しておりますので、ご一読ください。
libvhcall-fortran
 
動作確認を実施いただくための簡易プログラムを以下に用意しております。
VH CALL動作確認用プログラム
 

コンパイル方法
module load BaseVEC/2024
sh comp.sh

投入方法(投入前にrun.shを編集しgroupの指定を変更してください)
qsub run.sh

2024.04.18

計算ノード単位で最大メモリ使用量を取得したい

汎用CPUノード単位の最大メモリ使用量は「qstat -Jf」を定期的に実行することで採取可能です。
qstat -Jf でジョブが使用しているメモリcgroupサイズ(Memory Cgroup Resources)のうち、「Memory Usage」が現在のメモリ使用量、「Max Memory Usage」が最大メモリ使用量を表しています。

2022.12.09

SQUIDにMPIを独自にインストールして利用することは可能ですか?

OpenMPIについては独自にインストールしてご利用することが可能です。

MPIのパスを記載したmoduleファイルを作成してください。

ジョブスクリプトの中で以下のようにmoduleファイル指定してください。

2022.10.13

SQUIDでwandbを使用したい

wandbについてはpipコマンドにてインストール可能です。

pip install wandb
wandb login "XXXX"

 
SQUIDでは原則計算ノードからのインターネットアクセスを許可しておりませんが、wandbに限定して許可しています。
以下のようにジョブスクリプトを記述してください。

#!/bin/bash
#PBS -q SQUID
#PBS --group=[グループ名]
#PBS -l elapstim_req=1:00:00
cd $PBS_O_WORKDIR
export http_proxy="http://ibgw1f-ib0:3128"
export https_proxy="http://ibgw1f-ib0:3128"
python test.py

 
requests-2.24を使用してください。2.26等のバージョンについては、SQUIDで正常に動作しません。

2022.01.18

Intel MPIで ppn, rr, prehostオプションを使用したい

SQUIDでは環境変数 $NQSII_MPIOPTS / $NQSV_MPIOPTによって、#PBS -l cpunum_jobで指定した値を元に、machinefileを自動生成しMPIに設定しています。ppn, rr, prehostといったオプションはmachinefileと同時に指定することが出来ないため、仮に128 MPIプロセス / 1ノードあたり64プロセス割り当てることを想定し、以下のように指定したとしても、ppn オプションは無効となります。

mpirun ${NQSV_MPIOPTS} -np 128 -ppn 64 ./a.out

基本的には以下のように指定いただくことで、128 MPIプロセスを生成し、1ノードあたり64プロセス割り当てることが可能です。

#PBS -l cpunum_job=64
(中略)
mpirun ${NQSV_MPIOPTS} -np 128 ./a.out

環境変数 $NQSV_MPIOPTS は、以下のオプションとファイルが指定されています。

-machinefile /var/opt/nec/nqsv/jsv/jobfile/[リクエストID等の数値]/mpinodes

mpinodesファイルはマシンファイルとなっており、上記の場合は以下のようなホスト名、コア数が指定されています。

host001:64
host002:64

 
ただし、より細かくプロセス配置を指定したい場合(例えばピニングを設定し特定のコアにプロセスを使用せずに計算する場合など)上記のオプションでは対応出来ないケースがあります。ppn, rr, prehostオプションを使用する場合は、環境変数 $NQSII_MPIOPTS / $NQSV_MPIOPT を指定する代わりにhostfileオプションと環境変数 $PBS_NODEFILE を指定してください。128 MPIプロセスを生成し、1ノードあたり64プロセス割り当てる場合は以下のように指定します。

mpirun -hostfile ${PBS_NODEFILE} -np 128 -ppn 64 ./a.out

※PBS_NODEFILEを使う場合、#PBS -l cpunum_jobで指定した値がMPIに設定されません。ご自身でプロセス数の確認をお願いします。また、OCTOPUSではご利用いただけません。

2021.11.26

SQUID GPUノード群のGPUで使った最大メモリサイズを取得したい

以下のコマンドで取得可能です。ジョブスクリプトの最後で実行してください。

$ 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

SQUIDのGPUノードでPytorchを使用したい