hscPipe8 の実行環境

hscPipe を実行する計算機環境について、いくつか紹介します。

1. 国立天文台 多波長データ解析システム(MDAS)

2. 大規模観測データ解析システム

3. PBS 以外のバッチ処理システム

4. HSC データ解析用共同利用計算機(hanaco)

Warning

hanacoの運用は終了しました。 HSCユーザーは多波長解析システム(共同利用計算機)よりも大規模観測データ解析システム(LSC)の使用を推奨されています。

1. 国立天文台 多波長データ解析システム(MDAS)

国立天文台の共同利用計算機である多波長解析システム(MDAS)を使って HSC データの解析を行うことができます。 ここではMDASを使って解析を行う際の注意点を紹介します。 MDASの基本的な使用ルールは各自 ユーザーズガイド で確認してください。

準備

まず最初に共同利用計算機のアカウントを作ります。 申請は データセンターの利用申請 から行ってください。

作業用ディスク

MDASでは対話型解析サーバ(mana[00-07])、作業用大容量ディスクとして /lwk、拡張ディスク領域として /ext_nfs[1-3] が用意されています。 ユーザーズガイド を確認しながらご自身の解析に適切な環境を選んでください。 ワーキングスペースにするディスク以下に自身のアカウント名のディレクトリを作成し、その中で解析を行ってください。 各ファイルシステムの空き容量やステイタスは Working (Operational) Status of Data Analysis System から確認できます。

# 使用例(ユーザー名 hoge の場合)
mkdir /lwk/hoge

Warning

HSC pipeline を使用したデータ解析では大量のディスク容量が必要になります。 共同利用計算機である MDAS は 1 人のユーザーが占有できるわけではないので、必ず事前に ディスクの空き容量 を確認し、空き容量や自分の使用しているディスク容量に注意しつつ解析を行ってください。 また、処理の節目などでデータを一旦退避する等、他のユーザーへの配慮をお願いします。

HSC pipeline のインストール

2024 年 7 月 4 日より MDAS は新システムとなり、/usr/local/hscpipe に hscPipe 8.5.3 がインストールされているため、2024 年 7 月現在において最新版のこのバージョンを使用する場合はユーザー自身の手でインストールする必要はありません。

MDASでは Red Hat Enterprise Linux 8 互換の Rocky Linux 8 の OS を使用しています(2024 年 7 月現在)。 8.5.3 以外のバージョンを使用したい場合には hscPipe8 のインストール方法 ページの説明に従い Cent OS 7 のバイナリパッケージを選択してインストールします。

また、アストロメトリ用カタログと Y バンド迷光パターンファイルなど必要なレファレンスカタログは、/lwk/software/data/hscpipe に展開されています(旧システムではユーザー自身の手でダウンロードが必要でしたが、新システムではその必要がなくなりました。)。

MDAS の場合、unset LD_LIBRARY_PATH を行ってから hscpipe を立ち上げてください。 これを行わない場合、スクリプトが走らない可能性があります。

#hscpipeの立ち上げ
unset LD_LIBRARY_PATH
source /usr/local/hscpipe/8.5.3/bashrc # 自身でインストールした場合にはそれに応じてパスを変える
setup-hscpipe

HSC pipeline を実行するサーバーとキュー

MDASでは、自分の作業ディレクトリから 直接的にコマンド処理(smp mode)を行うことができます。旧システムで可能だった PBS スクリプトでのバッチ処理は新システムでは廃止されています。 MDASにおける構成機器は こちら をご覧ください。

2. 大規模観測データ解析システム

HSC等の共同利用望遠鏡で取得されたデータの解析は、2021年10月現在、国立天文台大規模観測データ解析システム(Large-scale data analysis system; LSC) で行っていただくことを想定しています。

HSCの観測プログラムを採用されたPI/CoIsは解析スタートから一年間はこの計算機のリソースを優先的に使う資格があります。優先期間終了後は、ユーザーは自動的に一般ユーザーとなり、利用できるリソースは少なくなります。

2019年秋より試験運用が始まっており、S19B以降のPIには案内メールが送られております。

大規模観測データ解析システムの利用方法はPIへの案内または以下のページをご参照ください。 https://www.adc.nao.ac.jp/LSC/ug/users_guide_j.html

LSCのhscPipe及びHSCデータ解析に関するお問い合せは、 HSC pipeline helpdesk (helpdesk [at-mark] hsc-software.mtk.nao.ac.jp)へご連絡ください。

hscPipe 以外の LSC についてのお問い合わせは、 lsc-consult [at-mark] ana.nao.ac.jp へご連絡ください。 ([at-mark] は@マークに置き換える)

PBS バッチ処理

ここでは hscPipeコマンドをバッチ処理で行う方法について説明します。 LSC では PBS というバッチ処理システムを使用して解析処理を実行します。 HSC pipeline のいくつかのコマンド(option に –batch-type を持つコマンド)でバッチ処理を実行するには、そのコマンドが書き込まれた PBS バッチスクリプトを準備する必要があります。

HSC pipeline のコマンドで option に –batch-type を持つものは constructBias.py, constructDark.py, constructFlat.py, constructFringe.py singleFrameDriver.py, coaddDriver.py, multiBandDriver.py です。 今回はこのうち singleFrameDriver.py で PBS バッチスクリプトを準備してみます。

# コマンドを dry-run で実行してバッチスクリプトを作る
singleFrameDriver.py /lwk/hoge/hsc --calib /lwk/hoge/hsc/CALIB  --id filter=HSC-I visit=902798..902808:2 --config processCcd.isr.doFringe=False --time 600 --nodes 1 --procs 16 --dry-run --clobber-config

# オプション:
#   --dry-run     :コマンドを空実行。実行するための PBS スクリプトが生成される
#   --clobber-config :同じ rerun 情報を引き継がずコマンドを実行

上記例のようにコマンドに –dry-run を付加すると、自身が実行したコマンドのバッチスクリプトの結果が /tmp/ 以下に出力されます。 この出力結果を自身の作業ディレクトリにコピーし、中身を編集すれば PBS バッチスクリプトの完成です。

# --dry-run の出力結果を作業ディレクトリにコピー(移動しても可)
cp /tmp/tmph0gE /lwk/hoge/work/


# tmph0gE(PBS バッチスクリプト)の中を編集する
# バッチスクリプトにはデフォルトの PBS 指示のコメントがあらかじめ書き込まれています(# 箇所)
# こちらを全て削除して、以下に書き直してください
:
:
#!/bin/bash
#PBS -m abe
#PBS -q qm
#PBS -N test
#PBS -l select=28:ncpus=1:mpiprocs=1:mem=16g
#PBS -l walltime=24:00:00
#PBS -M hoge@nao.ac.jp
#PBS -o hoge.out
#PBS -e hoge.err

# バッチ処理の進行を確認用 log file の作成のため
# 上記の PBS 指示コメントの後で以下の記述も追加してください
:
:
{

        (pipelineのコマンドに関する内容が記述されている箇所)

} &> /lwk/hoge/work/tmph0gE.log

PBS 指示の詳しいオプションは 多波長データ解析システムの旧システムのユーザーズガイド の 4.2.4 PBS Professional を参照してください。

PBS バッチスクリプトが準備できたら、いよいよ実行です。スクリプトを実行するコマンドは以下です。

# PBS バッチスクリプトの投入
qsub -V /lwk/hoge/work/tmphOgE

このバッチスクリプトの経過は tmphOgE.log に書き出されており、例えば以下の方法で確認することができます。

# log file を更新させながらターミナルに表示
tail -f tmphOgE.log

3. PBS 以外のバッチ処理システム

バッチ処理システムは、PBS 以外にも様々なシステムがあります。HSC pipeline では PBS システム用のバッチ処理がデフォルトの設定とされていますが、オプションで他のバッチ処理システムを指定することができます。 自身が使用する計算機環境で使われているシステムを理解し、HSC pipeline のバッチ処理を使用してください。

# 例えば SLURM で singleFrameDriver.py を実行する場合
singleFrameDriver.py ~/hsc --calib ~/hsc/CALIB --rerun test --id filter=HSC-I visit=902798..902808:2 --config processCcd.isr.doFringe=False --batch-type=slurm

# オプション:
#   --batch-type :使用するバッチ処理システムを指定。{slurm,pbs,smp} から選択できる。詳細は singleFrameDriver.py --help で確認できる。

4. HSC データ解析用共同利用計算機(hanaco)

Warning

hanacoの運用は現在終了しています。 大規模観測データ解析システムを利用してください。