京大スパコン使用方法(抜粋とtips) †
- マニュアル
スペックなど詳細は本家マニュアル等を参照してください.
Puttyの設定(システムAの場合) †
- HostName?: camphor.kudpc.kyoto-u.ac.jp
- Window>Columns&Rows: 100x30程度
- Appearance>FontSettings?: 14pt程度
- Connection>Data>username: 自分のid
- Connection>SSH>Auth>Private key file: 秘密鍵ファイルを指定
環境設定 †
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の切り替え
状況確認&変更 †
quota:ディスク使用状況の確認
id:現在のグループの確認
newgrp - grhogehoge:グループをgrhogehogeに変更(ハイフンがないと環境変数をクリアされる)
chdefgrp grhogehoge:ログイン時のグループをgrhogehogeに変更
qstat -q:利用可能なキューの確認
qstat:投入したジョブの確認
qgroup:グループのジョブを確認
qs:ジョブの詳細を確認
qcat -o xxxx:job id xxxxの標準出力を表示
qcat -e xxxx:job id xxxxのエラー出力を表示
qdel xxxx:job id xxxxのキャンセル
計算の実行 †
- 会話型実行
tssrun -A p=1:t=2:c=3:m=4G -W 5:00 -ug grhogehoge ./a.out
:a.outの実行(1プロセス,2スレッド/プロセス,3コア/プロセス,メモリ4G/プロセス,実行時間5:00,grhogehogeで実行)
CPUコアの上限(A:68, B:36, C:72)
メモリ上限(A:96G, B:128G, C:3072G)
時間上限(24:00)
計算資源の上限 †
並列数:qgroupでALLOCを確認
1つのジョブで1ノードを使用してしまうので注意.
例えば,システムAは68core/ノードなので9core並列などはもったいない.(大量のメモリを割り当てる場合は別)
メモリ:システムA 1ノード当たり90GB
p=4:m=45Gだと4x45GB=180GBなので2ノード使用される.
計算時間の上限:グループコース336h,パーソナルコース168h,エントリコース1h
ジョブidの入力をtab補完できるようにする(公式ではないので書いてあることがわかる人用) †
参考:http://space.rish.kyoto-u.ac.jp/akdk/usage.html
bash-completionをソースから入れる. †
- ソースをダウンロードして展開(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を読み込みなおしてチェック