1 / 16

Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078

D ata A cquisition B ackbone C ore library Jörn Adamczewski-Musch, Hans G.Essel , Nikolaus Kurz, Sergey Linev GSI, Experiment Electronics: Data Processing group Performance Design Release v1.0 Use cases. Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078. .

beata
Télécharger la présentation

Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Acquisition Backbone Core library Jörn Adamczewski-Musch, Hans G.Essel, Nikolaus Kurz, Sergey LinevGSI, Experiment Electronics: Data Processing group Performance Design Release v1.0 Use cases Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078 J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  2. Performance Software developments at GSI (EE) • Self-triggered front-end components • Event building over fast networks • 1 GByte/s bi-directional @ ~1000 nodes • Software packages developed: • 2005 Simulation with SystemC (flow control, scheduling) • Meta data on data network • 2006 Real dataflow core (round robin, with/without sychronization) • Linux, InfiniBand, GB Ethernet • Simulates data sources J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  3. Performance Software developments at GSI (EE) • Self-triggered front-end components • Event building over fast networks • 1 GByte/s bi-directional @ ~1000 nodes • Software packages developed: • 2005 Simulation with SystemC (flow control, scheduling) • Meta data on data network • 2006 Real dataflow core (round robin, with/without sychronization) • Linux, InfiniBand, GB Ethernet • Simulates data sources • > 500 Mbyte/s per node bi-directional @ 110 nodes J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  4. Design Software developments at GSI (EE) • Self-triggered front-end components • Event building over fast networks • 1 GByte/s bi-directional @ ~1000 nodes • Software packages developed: • 2005 Simulation with SystemC (flow control, scheduling) • Meta data on data network • 2006 Real dataflow core (round robin, with/without sychronization) • Linux, InfiniBand, GB Ethernet • Simulates data sources • 2007/8 Data Acquisition Backbone Core DABC(includes dataflow core) • Real data sources (arbitrary) • Applications implemented by plug-ins • Configuration, Controls, Monitoring, GUI ... •  General purpose DAQ framework J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  5. DABC design: global overview DABC Frontend datainput sorting tagging filter analysis PCIe Linux PCs Frontend sender GE Frontend Frontend IB Linux PCs UDP Linux PCs TCP analysis archive sender sorting tagging filter analysis datainput archive GE: Gigabit Ethernet IB: InfiniBand J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  6. DABC design: software objects of data flow engine A module processes data of one or several data streams. Data streams propagate through ports, which are connected bytransportsand devices Object manager DABC Module DABC Module Threads port port process process port port Central data managerMemory pools Bufferqueue Bufferqueue locally (by reference) Transport Transport Device Device Network J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  7. DABC design: single versus multiple threads CallBacks MainLoop Event queue Module::MainLoop Threads Module CallBacks Synchronization, buffer queues Module::MainLoop Module CallBacks Synchronization, buffer queues Module CallBacks Module::MainLoop J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  8. DABC design: smart buffers dabc::Buffer Reference list dabc::Memory Memory blocks dabc::Buffer Reference list Multiple references of resources (blocks) Copy buffer without copy of data PCI/DMA → buffer → IB/DMA J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  9. Release Control components and Plug-ins • Finite state machine • Application states • Controlled by manager (state transitions) -> application methods • Parameters • Structures (predefined) • Initialized by setup files • Exported to monitoring (update) • Maybe changed by commands (GUI) • Commands • Managed by manager • Execution from control system (GUI) or via Execute method • Can be dispatched to module or device threads • Manager (singleton, working thread) • Object manager • Implements control system (commands, parameters) • Default state machine • DIM server • Application (singleton)Setting up the overall topology of a DAQ process J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  10. Use cases DABC release v1.0.01 Download via dabc.gsi.de DABC Controls Java GUI* Core Plugins Applications [ EPICS** ] Slim (batch) DIM* bnet-mbs mbs ROC* ABB* ROOT IB verbs bnet-mbs mbs ROC ABB bnet-test core-test net-test Controls: No more XDAQ Plugins: Implementation of applications (programmers) Applications: Mainly setup or testing programs (users) * external packages needed ** future? ROC: ReadOutController board (UDP) ABB: ActiveBufferBoard (PCIe) IB: InfiniBand mbs: MultiBranchSystem (GSI DAQ) J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  11. ROC: Three ROCs to raw file and stream server Testbeam for nXYTER readout chain Poster 302, Thursday: Integration of CBM readout controller into DABC framework Analysis ROC cbmtest01 localhost/Readout Stream server UDP Device Combiner Input0 ServerOutput Transport Transport Device Input1 Device FileOutput Transport Transport ROC 1 Input2 Device Device Transport File ROC cbmtest04 J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  12. ROC: Three ROCs to raw file and stream server • Class Readout implements CreateAppModules • Application parameters known to all modules ROC cbmtest01 localhost/Readout Stream server UDP Device Combiner Input0 ServerOutput Transport Transport Device Input1 Device FileOutput Transport Transport ROC 1 Input2 Device Device Transport File ROC cbmtest04 J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  13. ROC: Three ROCs to raw file and stream server On-line analysis with Go4 ROC cbmtest01 localhost/Readout Stream server UDP Device Combiner Input0 ServerOutput Transport Transport Device Input1 Device FileOutput Transport Transport ROC 1 Input2 Device Device Transport File ROC cbmtest04 J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  14. PCIexpress board and Bnet PCIe Sender Receiver Eventbuilder Generators B n e t 4 x 4 J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  15. PCIexpress board and Bnet PCIe Sender Receiver PCI board Eventbuilder  Generators Three data generators B n e t 4 x 4 For all contexts For all workers  J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

  16. FOPI experiment on-line Thank You! J.Adamczewski-Musch, H.G.Essel, N.Kurz, S.Linev

More Related