#author("2024-03-06T10:07:06+09:00","default:suikoeditor","suikoeditor") #author("2024-03-06T10:18:09+09:00","default:suikoeditor","suikoeditor") #topicpath * 京大スパコン使用方法(抜粋とtips) [#d5ca05cb] 更新:2024/2/26 - [[マニュアル>http://web.kudpc.kyoto-u.ac.jp/manual-new/ja]] スペックなど詳細は本家マニュアル等を参照してください. ** Puttyの設定 [#f29b8f0a] - HostName system A: camphor.kudpc.kyoto-u.ac.jp - HostName system B: laurel.kudpc.kyoto-u.ac.jp - Connection>Data>username: 自分のid - Connection>SSH>Auth>Private key file: 秘密鍵ファイルを指定 ** 環境設定 [#s20bc141] module list:ロード済みmoduleの表示 module avail:全moduleの表示 module show [module_name]:module内容の表示 module load [module_name]:moduleのロード module unload [module_name]:moduleのアンロード module switch [module_name1] [module_name2]:moduleの切り替え ** 状況確認&変更 [#hf0c7f30] quota:ディスク使用状況の確認 id:現在のグループの確認 spartition:利用可能なキューの確認 squeue:投入したジョブの確認 qgroup:グループのジョブを確認 qs:ジョブの詳細を確認 scancel xxxx:job id xxxxのキャンセル scancel -u xxxx: ユーザー名がxxxxのjobをキャンセル ** 計算の実行 [#gbac5cd7] - 会話型実行 tssrun -p grhogehoge --rsc p=1:t=2:c=3:m=4G -t 5:0:0 ./a.out :a.outの実行(1プロセス,2スレッド/プロセス,3コア/プロセス,メモリ4G/プロセス,実行時間5:0:0,grhogehogeで実行) - バッチ処理 sbatch hogehoge.sh:hogehoge.shを投入.(hogehoge.shのサンプルは下記)~ ~ -- バッチ処理(スレッド並列サンプル) #!/bin/bash #SBATCH -p grhogehoge #SBATCH -t 5:00 #SBATCH --rsc p=1:t=2:c=3:m=4G #SBATCH -o %x.%j.out #============ Shell Script ============ set -x cd WORKDIR srun ./a.out -- バッチ処理(プロセス並列サンプル) #!/bin/bash #SBATCH -p grhogehoge #SBATCH -t 5:00 #SBATCH --rsc p=8:t=1:c=1:m=4G #SBATCH -o %x.%j.out #============ Shell Script ============ cd WORKDIR srun ./a.out -- バッチ処理(ハイブリッド並列サンプル) #!/bin/bash #SBATCH -p grhogehoge #SBATCH -t 5:00 #SBATCH --rsc p=8:t=4:c=4:m=4G #SBATCH -o %x.%j.out #============ Shell Script ============ cd WORKDIR srun ./a.out ** 計算資源の上限 [#p65e6f1d] spartitionを確認 システムAのノード当たり CPU:112cores,メモリ:128GB CPU:112cores,メモリ:128GB(デフォルト値1142M) システムBのノード当たり CPU:112cores,メモリ:512GB CPU:112cores,メモリ:512GB(デフォルト値4571M) p=4:m=45Gだと4x45GB=180GBなのでシステムAだと2ノード,システムBだと1ノード使用される. メモリの合計使用量はプロセス数(p)との積で決まり,プロセスあたりのコア数(c)とは無関係. 計算時間の上限:グループコース336h,エントリコース1h ** ジョブidの入力をtab補完できるようにする(公式ではないので書いてあることがわかる人用) [#z5080ea8] ※旧システム用.現在のシステム向けに改変すればscancelでも動作可~ 参考:http://space.rish.kyoto-u.ac.jp/akdk/usage.html *** bash-completionをソースから入れる. [#sdd77ddb] + ソースをダウンロードして展開(https://github.com/scop/bash-completion) wget https://github.com/scop/bash-completion/archive/master.zip ←urlは実際にアクセスして要確認 unzip master.zip + 設定ファイルの作成 autoreconf -i →configureが作成される ./configure --prefix=[自分に権限のある適当なpath] + makeしてインストール make make install + 実行するための設定(.bashrcの編集) bash_completion.shの内容を.bashrcにコピペ ついでにジョブidの入力が必要なコマンド(qcat, qdel)に関する下記の設定も追記 # qcat _qcat() { local cur=`_get_cword` COMPREPLY=( $(compgen -W "$(qstat | tail -n +3 | cut -d. -f1)" -- $cur) ) return 0 } complete -F _qcat qcat # qdel _qdel() { local cur=`_get_cword` COMPREPLY=( $(compgen -W "$(qstat | tail -n +3 | cut -d. -f1)" -- $cur) ) return 0 } complete -F _qdel qdel + 完了..bashrcを読み込みなおしてチェック ** NCLを使う(システムB, Cのみ.システムAでは使用不可) [#w807472d] + Exceed onDemand Clientを入れる.手順は上記. + Exceed onDemand Clientでログイン. module load ncl # pathの設定 export NCARG=/opt/app/ncl/6.4.0/ #バージョンの変更に注意. export NCARG_ROOT=${NCARG} export NCARG_BIN=${NCARG}/bin export NCARG_LIB=${NCARG}/lib export NCARG_INCLUDE=${NCARG}/include export PATH=${NCARG}/bin:${PATH} export LD_LIBRARY_PATH=${NCARG}/lib:${LD_LIBRARY_PATH}