$ sudo pbs_server -t create
$ sudo qmgr > create node hoge > set node hoge np=4 > set node hoge properties="cpu"
$ sudo qmgr > create node fuga > set node fuga np=2 > set node fuga gpus=1 > set node fuga properties="gpu"
np: CPU 数gpus: GPU のノード数properties: resources_default.neednodes で指定する際に指定する任意の名前 (他のノードとひとまとめに指定できる; neednodes の機能を有効にするにはスケジューラに Maui を導入する必要あり)exit: qmgr を終了print server (あるいは p s): 設定内容の表示 (ノード情報は表示されない)create node: ノードオブジェクトの作成create queue: キューオブジェクトの作成set node 設定: ノードオブジェクトの設定set queue 設定: キューオブジェクトの設定set server 設定: サーバの設定set server scheduling=true$ echo 'p s' | sudo qmgr > queue.conf
$ sudo qmgr < ファイル
set server … で始まる項目
| 項目 | 意味 | 値 (太字がデフォルト) |
|---|---|---|
| scheduling | スケジューリングの有効化 | true or false |
| default_queue | デフォルトのキューを設定 | |
| log_events | ログの出力内容 | |
| query_other_jobs | root以外のユーザが他人のジョブを閲覧する許可 | true or false |
| scheduler_iteration | ? | |
| node_check_rate | ノードが死亡していると判断するまでの時間(秒) | 整数値 (600) |
| tcp_timeout | pbs_serverとpbs_mon間のTCPソケットのタイムアウト時間(秒) | 整数値 (8) |
| node_pack | 1つのノードを埋めてから次のノードを利用するか | true or false |
| allow_node_submit | ノードからのジョブ投入の許可 | true or false |
| keep_completed | 完了後キューの中に留めておく時間(秒) | 整数値 (0) |
set queue キュー名 … で始まる項目
| 項目 | 意味 | 値 (太字がデフォルト) |
|---|---|---|
| queue_type | キュータイプ | execution(e) or route® |
| resources_default.ncpus | デフォルトで指定されるCPU数 | |
| resources_default.nodes | デフォルトで指定されるノード数 | |
| resources_default.neednodes | 使用するノードを指定 (nodes ファイルで指定した名前) ※スケジューラに Maui を使う必要あり | |
| enabled | ジョブの受け入れ(このキューでのジョブ投入を許可するか) | true or false |
| started | ジョブを実行するか(falseならhold状態で投入される) | true or false |
# # Create queues and set their attributes. # # # Create and define queue F # create queue F set queue F queue_type = Execution set queue F resources_default.ncpus = 1 set queue F resources_default.nodes = 1 set queue F enabled = True set queue F started = True # # Create and define queue Q2 # create queue Q2 set queue Q2 queue_type = Execution set queue Q2 max_running = 1 set queue Q2 resources_max.ncpus = 4 set queue Q2 resources_max.nodes = 1 set queue Q2 resources_default.ncpus = 1 set queue Q2 resources_default.nodes = 1 set queue Q2 resources_available.ncpus = 4 set queue Q2 resources_available.nodes = 1 set queue Q2 enabled = True set queue Q2 started = True # # Create and define queue Q4 # create queue Q4 set queue Q4 queue_type = Execution set queue Q4 max_running = 1 set queue Q4 resources_max.ncpus = 4 set queue Q4 resources_max.nodes = 1 set queue Q4 resources_default.ncpus = 1 set queue Q4 resources_default.nodes = 1 set queue Q4 resources_available.ncpus = 4 set queue Q4 resources_available.nodes = 1 set queue Q4 enabled = True set queue Q4 started = True # # Create and define queue Q1 # create queue Q1 set queue Q1 queue_type = Execution set queue Q1 max_running = 1 set queue Q1 resources_max.ncpus = 4 set queue Q1 resources_max.nodes = 1 set queue Q1 resources_default.ncpus = 1 set queue Q1 resources_default.nodes = 1 set queue Q1 resources_available.ncpus = 4 set queue Q1 resources_available.nodes = 1 set queue Q1 enabled = True set queue Q1 started = True # # Create and define queue Q3 # create queue Q3 set queue Q3 queue_type = Execution set queue Q3 max_running = 1 set queue Q3 resources_max.ncpus = 4 set queue Q3 resources_max.nodes = 1 set queue Q3 resources_default.ncpus = 1 set queue Q3 resources_default.nodes = 1 set queue Q3 resources_available.ncpus = 4 set queue Q3 resources_available.nodes = 1 set queue Q3 enabled = True set queue Q3 started = True # # Set server attributes. # set server scheduling = True set server default_queue = F set server log_events = 511 set server query_other_jobs = True set server scheduler_iteration = 600 set server node_check_rate = 150 set server tcp_timeout = 6 set server node_pack = False set server allow_node_submit = True