E16実験へのDAQ-Middlewareの応用 濱田英太郎, 田中真伸, 内田智久, 池野正弘, 千代浩司, 四日市悟A, 小沢恭一郎, 森野雄平A, 高橋智則A, 中井恒BA, 川間大介A, 小原裕貴B KEK素核研, 理研A, 東大理B 2014/3/30 日本物理学会 1 目次 ・E16実験について ・DAQ-Middlewareについて ・作成したプロトタイプの紹介 – 概要 – 2つの特徴 – DAQ性能 ・まとめ 2014/3/30 日本物理学会 2 E16実験 • 茨城県東海村 J-PARCハドロン実験施設で開始予定 • ベクトル中間子の質量変化現象を高統計・高分解能で測定 2014/3/30 日本物理学会 3 自分の担当 ~96000 ch (56000+40000) GEM CERN RD51 SRS APV25-hybrd Junction box Tracker HBD Gas Cherenkov TRG-ADTX (ASD) DAQ-Middlewareを用いて、 DTC-LINK データ収集、保存、解析を行なう SRS ADC+FEC SRS SRU ソフトウェアを作成 SRS CTF Belle2 FTSW or alternative TRG-MRG (MUX, GTX) Belle2 UT-3 Network switch DAQ PC 450MB/s Leadglass EMCAL LG-FEM 3“ PMT SRS SRU ~1000 ch Shaper + FADC Discri + DRS4 2014/3/30 SRS CTF Data flow Trigger primitive Global clock, global trigger DTC-LINK 日本物理学会 4 DAQ-Middleware ネットワーク分散 ネットワーク分散 分散して配置されたノード同士が連携 して通信するネットワークを形成 PC2 PC1 PC3 PC4 Daq Operator 2014/3/30 日本物理学会 5 E16実験 DAQソフトウェア開発状況 • PC1台を用いて構成されるプロトタイプを作成、評価 • プロトタイプを利用して、全体の構築を行なっていく Daq Operator 2014/3/30 日本物理学会 6 E16実験用プロトタイプ 概要 1リードアウトモジュール から送られるデータ PC 平均 ・ ・ ・ Logger Gatherer Dispatcher 1イベントあたりの データサイズ 14kB トリガーレート 1kHz 最大値 45kB 2kHz Monitor • • • • Gatherer Dispacher Logger Monitor 2014/3/30 :複数のリードアウトモジュールからデータを読み込み :Gathererから受け取ったデータを、LoggerとMonitorに送信 :全データをPCのハードディスクに保存 : 一定期間ごとにデータをモニタリング 日本物理学会 7 特徴1 リングバッファの拡大 ①受信したデータは、 リングバッファに格納 ②プログラムが バッファから データを取得 Loggerコンポーネントでリング バッファが小さい場合 ①ハードディスクの書き込みにレイ テンシが発生するときがある (しばらく書き込めない) PC ・ ・ ・ ②書きこめない間、処理が進まない Logger ③リングバッファにデータが溜まっ ていき、あふれてしまうことがある Monitor ④ソフトウェア全体が適切に動作し ない Gatherer Dispatcher リングバッファを大きくする(最新の追加機能) HD書き込みのレイテンシの問題を解決 2014/3/30 日本物理学会 8 特徴2 コンポーネント間通信処理オーバヘッドの軽減 オーバヘッド コンポーネント間でのデータのやり取りを行なう際の 転送以外の処理 多いとDAQ性能の低下につながる Logger Gatherer Dispatcher 影響を小さくする方法 コンポーネント間のデータのやり取りを少なくする データをまとめる 1イベントごとに次の 1event コンポーネントへ送る →オーバヘッド大きい 2014/3/30 Monitor 200KB 200KBたまったら次の コンポーネントへ送る →オーバヘッド小さい 日本物理学会 9 DAQ性能 PC (DAQ PC) テスト環境 PC (エミュレータ) CPU Memory OS Intel(R) Xeon(R) X5650 @ 2.67GHz 6コア 24GB Scientific Linux 6.4 1リードアウトモジュール から送られるデータ 平均 最大値 1イベントあたりの データサイズ 14kB 45kB トリガーレート 1kHz 2kHz 2014/3/30 DAQ-MW テスト方法 エミュレータPCからDAQ PCにテストデータを送信 送ったデータの転送速度とプロトタイプの処理速 度を比較 日本物理学会 10 DAQ性能 PC (DAQ PC) テスト環境 PC (エミュレータ) CPU Memory OS DAQ-MW Intel(R) Xeon(R) X5650 @ 2.67GHz 6コア 24GB Scientific Linux 6.4 テスト結果 1リードアウトモジュール から送られるデータ 平均 最大値 1イベントあたりの データサイズ 14kB 45kB トリガーレート 1kHz 2kHz 2kHzまで、プロトタイプは送られた データ全てを処理している 2014/3/30 日本物理学会 11 DAQ性能 PC (DAQ PC) テスト環境 PC (エミュレータ) CPU Memory OS DAQ-MW Intel(R) Xeon(R) X5650 @ 2.67GHz 6コア 24GB Scientific Linux 6.4 テスト結果 1リードアウトモジュール から送られるデータ 平均 最大値 1イベントあたりの データサイズ 14kB 45kB トリガーレート 1kHz 2kHz 2kHzまで、プロトタイプは送られた データ全てを処理している 2014/3/30 日本物理学会 12 まとめ • E16実験DAQのソフトウェアを開発 現在は、1PCで動くプロトタイプを作成 • E16実験用プロトタイプ 特徴 – リングバッファの拡大 – コンポーネント間通信処理オーバヘッドの軽減 性能 – リードアウトモジュール1台の場合、実験の想定された性能を満たしている • 今後の予定 – 多くのエミュレータを用意した場合のテスト – プロトタイプを用いて、システム全体の設計を行なっていく 2014/3/30 日本物理学会 13 Backup 2014/3/30 日本物理学会 14 DAQ性能 PC (DAQ PC) テスト環境 PC (エミュレータ) CPU Memory OS Intel(R) Xeon(R) X5650 @ 2.67GHz 6コア 24GB Scientific Linux 6.4 PC (エミュレータ) DAQ PCに求められる性能 平均 最大値 1イベントあたりの データサイズ 14kB 45kB トリガーレート 1kHz 2kHz DAQ-MW スケーラブルの変化ではない テスト結果 Gathererコンポーネントをが1 つのCPUコアで処理されている から 2kHzまで、プロトタイプは送られた データ全てを処理している 2014/3/30 日本物理学会 15 コンポーネントの考えている構成 考えている構成 PC ・ ・ ・ Logger Gatherer Dispatcher Gatherコンポーネントを1つのCPUコアで 処理を行なっている (2つ以上のモジュールを読む場合でも) Monitor PC 今 Gatherコンポーネントを1つのCPUコアで 処理を行なっている (2つ以上のモジュールを読む場合でも) Logger Dispatcher Gatherer 2014/3/30 日本物理学会 Monitor 16 全テスト結果 2014/3/30 日本物理学会 17 PC使用率 TOPコマンドを用いて、Gathererコ ンポーネントのCPU使用率を取得 1イベントあたりのデータ量が上 がるにつれてCPU使用率も上昇 CPU使用率[%] trigger rateをあがるにつれてCPU 使用率も上昇 120 100 45kB x 1 80 14kB x 1 3.3kB x 1 60 14kB x 2 40 3.3kB x 2 20 0 0 2014/3/30 日本物理学会 1000 2000 3000 trigger rate [Hz] 4000 18 overhead 性能テスト 1イベントあたりの データ量 14kBの場合 2014/3/30 日本物理学会 19 DAQ性能 テスト環境 PC (エミュレータ) PC CPU Memory OS Intel(R) Xeon(R) X5650 @ 2.67GHz 6コア 24GB Scientific Linux 6.4 • 1イベントのデータを16回かけて送信 • 実験では、1kHz~2kHz この間では、問題ない • 2modulesにすると、性能が落ちる Gatherが1コアで処理を行なって いるから 2014/3/30 日本物理学会 DAQ-MW 20 4components SourceはDispacherに、データを送ります。 Dispacherは、exampleと変わっていません。2 つのSinkにデータを送ります。 Source,Sinkは千代さんが以前、性能テストで 使ったコンポーネントと同じことを行なっていま す。 各BufferSizeを5分間測定したときの結果です。 (MB/s) Source Dispacher Sink Sink の4つのコンポーネント 350 300 250 200 150 100 50 0 0 500 1000 1500 2000 Buffer size(kB) 2500 4components SourceはDispacherに、データを送ります。 Dispacherは、exampleと変わっていません。2つの Sinkにデータを送ります。 Source,Sinkは千代さんが以前、性能テストで使っ たコンポーネントと同じことを行なっています。 各BufferSizeを30分間測定したときの結果です。 これを5回行ないました。 (色の違いは、何回目に測定したか、です) 30分測定こともあり、ほとんど色にばらつきはあり ません この結果より、このコンポーネントの組み合わせ の場合、最大約340MB/sのスループットで処理で きることが分かりました。 (MB/s) Source Dispacher Sink Sink の4つのコンポーネント 340 320 300 280 260 240 220 200 0 200 400 Buffer size(kB) 600
© Copyright 2024 ExpyDoc