mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 00:31:14 +00:00
First commit
This commit is contained in:
commit
eb4a1b4261
BIN
AliceO2DebugGUIScreenshotEPN.png
Normal file
BIN
AliceO2DebugGUIScreenshotEPN.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 861 KiB |
15
readme.md
Normal file
15
readme.md
Normal file
|
@ -0,0 +1,15 @@
|
|||
FairMQ in a nutshell
|
||||
|
||||
Next-generation Particle Physics Experiments at FAIR and CERN are facing unprecedented data processing challenges. High detector data readout rates alone already require a non-trivial amount of distributed compute resources in the order of hundreds of servers per experiment. In order to achieve sufficient data compression rates to stay within the limits of economically feasible data storage capacity requirements, the complexity of tasks that need to be performed during the synchronous (online) data processing is significantly increased, too, compared to previous generations of experiments.
|
||||
|
||||
The FairMQ C++ library is designed to aid the implementation of such required large-scale online data processing workflows by
|
||||
* providing an asynchronous message passing abstraction that integrates different existing data transport technologies (no need to re-invent the wheel),
|
||||
* providing a reasonably efficient data transport service (zero-copy, high throughput - TCP, SHMEM, and RDMA implementations available),
|
||||
* being data format agnostic (suitable data formats are usually very experiment-specific), and
|
||||
* providing other basic building blocks such as a simple state machine based framework and a plugin mechanism to integrate with external config/control systems.
|
||||
|
||||

|
||||
|
||||
The screenshot shows a visualization of the data processing workflow on a single Alice event processing node (The O2DebugGUI tool in the screenshot is not part of FairMQ). Data continuously flows along the yellow edges through the various processing stages of which some are implemented as GPU and others as CPU algorithms.
|
||||
|
||||
(TODO Although FairMQ was initially designed for the synchronous (online) data processing, it has been used also to parallelize asynchronous (offline) computation such as simulation and analysis. references?)
|
Loading…
Reference in New Issue
Block a user