• 検索結果がありません。

GRID / gbasf2 三宅秀樹 (KEK) Aug. 27 th, 2014 Basf2/gBasf2 名古屋大学

N/A
N/A
Protected

Academic year: 2022

シェア "GRID / gbasf2 三宅秀樹 (KEK) Aug. 27 th, 2014 Basf2/gBasf2 名古屋大学"

Copied!
37
0
0

読み込み中.... (全文を見る)

全文

(1)

三宅 秀樹 (KEK)

Aug. 27

th

, 2014

Basf2/gBasf2

講習会

@

名古屋大学

(2)

• GRID

コンピューティング

GRID

解析の流れ

• Belle II

分散コンピューティングシステム概要

DIRAC

システム

• gBasf2

インストール

ジョブ投入

(

明日用

)

(3)

GRID

(4)

電力グリッド

ネットワークを介した大規模計算

分散した資源を最大限に有効利用

バッチジョブと何が違う

?

GRID

全体に渡る資源管理

CPU

入出力データ

(*)同じ所にあるとは限らない

セキュリティ

(

認証と承認

)

計算機グリッド 極めて重要: ユーザー確認

CA証明書とVO認証

KEK認証局 Belle II collaboration (Belle VO)

(5)

代表的な

GRID

構成要素

CE: computing element

バッチシステム + GRID interface

WN: worker node

CPU資源 (jobはここで走る)

SE: storage element

(主に)ディスク + GRID interface

FC: file catalog

ファイルの位置情報 (論理的実住所(各SE))

VOMS: VO membership service

Belle VOのメンバーである事を保証

CE

SE

FC

VOMS Proxy: 各サービスに認証情報を提供する”切符”

一定時間のみ有効(DIRACデフォルト: 24時間) 又貸し厳禁

KEK

(6)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

Site A

Site B

Site C

(7)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

Site A

Site B

Site C /belle

/user /data /MC

/signal

/B0JpsiKs

/mcprodtest

/file1.mdst.root /file2.mdst.root /file3.mdst.root データセット mcprodtest

GRIDにおいては、データの論理構造は

LFNにより階層的かつユニークに 管理される

データセット: ある条件の下に選択 されたイベント(ファイル)の集合

(e.g. signal MC, skim結果等) LFN: Logical File Name

(8)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

個々のファイルは

1

個以上の実体

(

レプリカ

)

を持つ

レプリカの置き場所はファイルカタログ に登録

Site A

Site B

Site C Site A

(9)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

ψKS

Site A

Site B

Site C

(10)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

解析

job (basf2)

投入

Site A CE

job

実行

Site A

Site B

Site C ψKS

(11)

とあるシグナル

MC(B

0

J/ ψK

S

)

処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

解析

job (basf2)

投入

Site A CE

job

実行

Site B CE

job

実行

Site A SEからSite B WNへのダウンロード

Site A

Site B

Site C ψKS

(12)

とあるシグナル

MC(B

0

J/ ψK

S

)

処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

解析

job (basf2)

投入

解析

job

終了

データ

(ntuple

など

)

Site C SE

にアップロード

Site A

Site B

Site C

(13)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

解析

job (basf2)

投入

解析

job

終了

解析結果回収

Site C SE

より、データをローカルに

ダウンロード

Site A

Site B

Site C

(14)

とあるシグナル

MC(B

0

J/ ψK

S

)

を 処理したい

読むべきデータはどれか

?

/belle/MC/signal/B0JpsiKs/mcprodtest

そのデータはどこにある

?

Site A

解析

job (basf2)

投入

解析

job

終了

解析結果回収

Site A

Site B

Site C

ファイルカタログ参照、データ操作、ジョブ投入などを サイトそのものの運用も含めて支援するソフトウェア群

 GRIDミドルウェア

(15)

実のところ

GRID

ミドルウェアには

様々な方言があり、さらに近年は

クラウドコンピューティングなども人気

Belle II

においても色々なタイプの

分散コンピューティング資源が

用いられている

WLCG GRID (Worldwide LHC Computing GRID)

OSG GRID (Open Science Grid; 主に米国)

Cloud (学術及び商用クラウド (AmazonEC2など)

Local cluster (non-GRID; 大学など)

それぞれのシステムには個別の

インターフェースが必要

(16)

• Distributed Infrastructure with Remote Agent Control

– Software framework for distributed computing

• Main feature

– Pilot jobs

– Workload management overall VO – Extendible (modular structure)

 GRID, cloud, and local cluster

LHCbで開発され、

2010年より別組織としてスピンオフ

LCG OSG

統合されたUIを提供

Belle II分散コンピューティングは DIRACベースで行われる

ILC, BES, biomedical…

(17)

• LFN

とレプリカの対応関係

ファイルカタログ

ファイルの情報としてはそれだけでは不足

実験情報

(Exp, Run, Event

番号

)

親ファイル

LFN

basf2

リリース

データベースリビジョン

解析モジュール

SVN

リビジョン

etc.etc….

データに対する付加的な情報

(=

メタデータ

)

ファイル

/

データセットの効率的な抽出に威力

特定

reprocess

バージョンの

skim

など

Data of data

(18)

e.g. replication of specific data set or run period for a GRID site

• Main feature

– Integration with GRID security – Secure connection using SSL – Replication of data

• Asynchronous and hierarchical

• ARDA Metadata Grid Application

– Metadata server for GRID environment

GRID環境に特化したカタログサーバー - 現在KISTIにて開発

(19)

DIRAC及びAMGAサーバーも分散配置 (KEKサーバーがメイン)

WLCG OSG

(20)

gBasf2

(21)

• gBasf2 as a wrapper

Basf2 jobをGRID上で実行

必要なデータをWNにダウンロード

生成データをSEにアップロードし、カタログに登録

単なるジョブ投入ツールでは無く、多数のコマンド群より成る

ジョブ制御(ジョブ監視、削除など)

データ管理(レプリカ生成・消去、メタデータ抽出など)

gbasf2

DIRAC AMGA

% gbasf2 steeringfile.py % basf2 steeringfile.py basf2

GRID local

(22)

• DIRAC

環境構築

+ user job

実行支援

GRID

システムから見える

”job”

• basf2

pilot job

の上で走る

実行の流れ

gbasf2

コマンド実行

複数

GRID

サイトに

Pilot job

投入

(

特にサイト指定しない場合

)

WNDIRACクライアントをインストールし、ベンチマーク実行

最もスコアの高いサイトを選択

(Matching)

DIRAC job (basf2helper) 実行

helper上よりbasf2プロセス実行

pilot basf2helper

error表示に注意 (helperのエラーでも、basf2クラッシュの可能性がある)

(23)

• DIRAC

サーバーとの通信を仲立ちする

Desktop

にインストール

WN

上にもインストール

Pilot jobの一部

• DIRAC (

クライアント

)

DIRAC

コミュニティで共通に使われるコード

• BelleDIRAC

Belle II

実験用の拡張モジュール

gBasf2

BelleDIRAC

の一部

client

Server (KEK)

DIRACクライアントはCERN、

BelleDIRACKEKよりダウンロードされる BelleDIRAC

DIRAC

(24)

• RHEL5

6

をサポート

(Mac

は問題あり

?)

• Basf2

環境は不要

(

あるとそれなりに便利

)

mkdir mygbasf2 && cd mygbasf2

wget https://raw.github.com/DIRACGrid/DIRAC/integration/Core/scripts/dirac-install.py -O dirac-install.py --no-check-certificate

python dirac-install.py -V Belle-KEK source bashrc && dirac-proxy-init -x dirac-configure defaults-Belle-KEK.cfg

source BelleDIRAC/gbasf2/tools/setup gb2_proxy_init –g belle

初回インストールのみ (dirac-install-r trunkをつけるといわゆるHEADを取ってくる)

毎回必要 (新規ターミナルなど)

左のようにproxyが初期化できない場合

dirac-configure忘れや.globus以下のパーミッション?

See also https://belle2.cc.kek.jp/~twiki/bin/view/Computing/gBasf2

(25)

source setup_gbasf2 gb2_proxy_init –g belle

毎回必要 (新規ターミナルなど)

• KEKCC

の場合、既に共通エリアにインストール済み

mkdir gbasf2KEK && cd gbasf2KEK

ln –s /sw/belle2/gbasf2/setup_gbasf2 .

初回のみ

[要確認]for Belle1コラボレータ:

idコマンドでb2_belle2グループが見える事

左のようにproxyが初期化できない場合

dirac-configure忘れや.globus以下のパーミッション? ここのバージョンがobsoletedな時には

担当者にクレームを入れてください

(26)

gBasf2: terminology

(27)

Belle II

コンピューティングにおける重要な概念

Dataset

Project

の出力データが書き出される

(

入力データの単位でもある

)

基本は

Project

1

1

対応

(sub-dataset

も持てる

)

e.g. /belle/user/hideki/MyProject/…

実体は

SE

上にある

Project

gBasf2 job

の管理単位

e.g. 100個のMC生成 job1000個の解析job

基本的に同じ

basf2 steering file

を用いる

(28)

Sandbox

デスクトップ

– Worker Node

間で小サイズのデータをやり取りする入れ物

Input steering file EvtGen decay filebasf2モジュールソースコード

Outputログファイル、プロファイルデータ

最大

10MB

まで

このサイズを超えるデータは

SE

にアップロードし、必要に応じてダウンロード

• LFN

で指定したデータは

sandbox file

として指定されていても

SE

よりダウンロードされる

e.g. LFN:/belle/user/hideki/foo/bar.root

TIPS: gBasf2*.tar.*zもしくは*.t*zを自動展開

(29)

ジョブの実行先

何も指定しない場合、

DIRAC

が良きにはからう

Pilot

スコア、

input data

格納場所などから判断 GRID.SITE.country

gb2_list_site サイト命名規則

LCG.KEK2.jp DIRAC.PNNL.us

(30)

入出力データの格納場所

各サイトごとにデフォルト

(

ローカル

)SE

が定義されている

gBasf2

の場合、

--default_se

オプションで変更可能

自分の

disk

使用量は

gb2_ds_du

コマンドで把握すべし

SITE-SE

SE命名規則

KEK2-SE PNNL-SE gb2_list_se

(31)

gBasf2: submission

(32)

基本的に

Basf2

steering file

がそのまま使える

• gBasf2 option

の埋め込みも可能

e.g. gb2_setuprel = “build-2014-08-01”

独自のgb2_*の定義は避けるのが無難

可能なオプションの一覧は

gbasf2 --help-steering

得られる

重要事項gBasf2はデスクトップ上にbasf2 setupを要求しない (今のところ)

(33)

そして投入 (プロジェクト名は変えてください)

• Sample steering file

をダウンロード

wget https://belle2.cc.kek.jp/~twiki/pub/Computing/GBasf2/example.py.txt -O example.py --no-check-certificate

gbasf2 example.py –p hidekiProject –s build-2014-08-01

Your Job ID

実の所、build-2014-08-01reconstruction/example/example.pyそのもの

(34)

より実践的な

job

投入

MC production script (MC3.5で用いたもの)を適当に 最新ライブラリに合わせたもの

うまく動けばラッキー

wget

https://belle2.cc.kek.jp/~twiki/pub/Computing/MCCampaign2014/mcprod_1408_tutorial.tgz --no-check-certificate

Tarballを展開すると、大量のdecayファイルとscriptが見えるはず Run_MCprod_tutorial.shが実行スクリプト

./run_MCprod_tutorial.sh

./run_MCprod_tutorial.sh 0 0 0 0

勿論覚えるべきは実行中に出てくるgbasf2コマンドライン (明日詳しくやります)

オプション -r 10により、10本のMC production jobが投入される 1本辺り1000events (steering fileも参照の事)

(35)

先程作った

job

のアウトプットをあれやこれやしてみる

宿題

https://dirac.cc.kek.jp/DIRAC/Belle-KEK/belle/jobs/JobMonitor/display にアクセス

gb2_project_summary

を実行

(36)
(37)

Job Receiver Job

JDL

Sandbox Job

Input

JobDB

Job Receiver Job

Receiver Data

Optimizer Task

Queue

LFC/DFC

Agent Director

checkJob

RB RB RB

Pilot Job

CE

WN

Pilot Agent

Job Wrapper execute

(glexec)

User

Application fork

Matcher

CE JDL

Job JDL

getReplicas WMS

Admin

getProxy

SE

uploadData

VO-box putRequest

Agent Monitor

checkPilot

getSandbox

Job Monitor

DIRAC services LCG services Workload On WN

参照

関連したドキュメント

Taking a partially penetrating well as a uniform line sink in three dimensional space, by the orthogonal decomposition of Dirac function and using Green’s function to

In particular we conclude that the Lorentz covariant nonlinear Dirac equations we have explicitly studied in this paper are not gauge equivalent to the linear Dirac equation.

This Lecture is devoted to a review of the relevant mathematical concepts, such as Lie algebroid, Courant bracket, Dirac structure and generalized complex geometry (also its

The Admissions Office for International Programs is a unit of the Admissions Division of Nagoya University that builds and develops a successful international student recruitment

In the further part, using the generalized Dirac matrices we have demonstrated how we can, from the roots of the d’Alembertian operator, generate a class of relativistic

In the further part, using the generalized Dirac matrices we have demonstrated how we can, from the roots of the d’Alembertian operator, generate a class of relativistic

Yang, Complete blow-up for degenerate semilinear parabolic equations, Journal of Computational and Applied Mathematics 113 (2000), no.. Xie, Blow-up for degenerate parabolic

Furthermore, we give a different proof of the Esteban-S´er´e minimax principle (see Theorem 2 in [13] and [9]) and prove an analogous result for two dimen- sional Dirac