3. 使用方法

ここでは使用方法について最低限必要な事項を説明します。
詳しくは「FOCUSスパコン利用の手引き」を参考にしてください。

3.1 環境設定

標準のshellはbashです。
エディタはvim,emacs,nanoなどが使用できます。
必要なら、ホームディレクトリの以下のファイルを編集してください。

3.2 フロントエンドサーバーの作業内容

フロントエンドサーバーで以下の作業を行います。

  1. ソースコードの修正(必要なら)
  2. コンパイル・リンク
  3. 小さいジョブによるデバッグ作業とチューニング作業 (注1)
  4. ジョブ発行、ジョブ確認 (注2)
  5. 計算結果のログの確認
(注1)
通常のコマンドラインで実行プログラムを起動することができますが、 計算時間、プロセス数、メモリー等の制約があり、簡単なテストのみを行うことができます。
(注2)
sbatchコマンドでジョブを発行し使用時間に応じて課金されます。
なお、各システムにはデバッグ用のパーティションが用意されており、 それを用いると6分以内のジョブは課金されません。

3.3 moduleコマンド

コンパイラー(とそのバージョン)によって開発時と実行時に必要な環境変数が異なりますが、 FOCUSではmoduleコマンドにより一括設定できるようになっています。
設定するには以下のコマンドを実行します。
$ module load モジュール名
解除するには以下のコマンドを実行します。
$ module unload モジュール名
moduleコマンドのその他の使い方は以下の通りです。
$ module --help (使い方の説明)
$ module avail (使用可能なモジュール一覧を表示する)
$ module list (現在登録されているモジュールを表示する)

初期状態ではgcc4.4.7のみが使用可能になっています。 必要に応じて以下のmoduleをloadしてください。
$ module load PrgEnv-gnu-6.3.0 (gcc6.3.0を使用するとき)
$ module load MPI-openmpi-2.1.1+gnu-6.3.0+cuda-8.0 (MPIを使用するとき)
$ module load PrgEnv-cuda-9.2 (CUDAを使用するとき)
数字はバージョンであり変わる可能性があります。

3.4 稼働状況コマンド

稼働状況を調べるコマンドは以下の通りです。
$ sinfo -s (A:割り当てられているノード数、I:使用可能なノード数)
$ freenodes (右の数字:割り当てられているノード数、左の数字:使用可能なノード数)
$ squeues (RUN:使用中のノード数、FREE:使用可能なノード数)
$ thismonth または uacct (今月の利用料金が表示されます)

3.5 ジョブ関係コマンド

ジョブ関係のコマンドは以下の通りです。
$ sbatch スクリプトファイル名 (ジョブの発行)
$ squeue (ジョブの実行状況の監視、自分の発行したジョブのみ)
$ scancel キュー番号 (ジョブの取り消しまたは中止、キュー番号はsqueueコマンドで表示される)