mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-12 16:21:13 +00:00
.. | ||
FairMQMessageSHM.cxx | ||
FairMQMessageSHM.h | ||
FairMQPollerSHM.cxx | ||
FairMQPollerSHM.h | ||
FairMQShmDeviceCounter.h | ||
FairMQShmManager.h | ||
FairMQShmMonitor.cxx | ||
FairMQShmMonitor.h | ||
FairMQSocketSHM.cxx | ||
FairMQSocketSHM.h | ||
FairMQTransportFactorySHM.cxx | ||
FairMQTransportFactorySHM.h | ||
README.md | ||
runFairMQShmMonitor.cxx |
Shared Memory transport
First version of the shared memory transport. To try with existing devices, run the devices with --transport shmem
option.
The transport manages shared memory via boost::interprocess library. The transfer of the meta data, required to locate the content in the share memory, is done via ZeroMQ. The transport supports all communication patterns where a single message is received by a single receiver. For multiple receivers for the same message, the message has to be copied.
Under development:
- Cleanup of the shared memory segment in case all devices crash. Currently at least one device has to stop properly for a cleanup.
- Implement more than one transport per device.
- Configuration of the shared memory size (currently hard-coded).