You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/configurationParameters.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -130,6 +130,7 @@ The parameters related to 3rd-party libraries are described here for convenience
130
130
| consumer-zmq-*| maxRate | int| 0 | Maximum number of pages to publish per second. The associated memory copy has an impact on cpu load, so this should be limited when one does not use all the data (eg for eventDump). |
131
131
| consumer-zmq-*| pagesPerBurst | int | 1 | Number of consecutive pages guaranteed to be part of each publish sequence. The maxRate limit is checked at the end of each burst. |
132
132
| consumer-zmq-*| zmqOptions | string || Additional ZMQ options, as a comma-separated list of key=value pairs. Possible keys: ZMQ_CONFLATE, ZMQ_IO_THREADS, ZMQ_LINGER, ZMQ_SNDBUF, ZMQ_SNDHWM, ZMQ_SNDTIMEO. |
133
+
| equipment-*| autoTimeframeId | int | 0 | When set, timeframe IDs are generated incrementally instead of being computed from trigger orbit counters. Useful to replay files with unordered / gap between TF. BC still used to detect boundaries between TFs. |
133
134
| equipment-*| blockAlign | bytes | 2M | Alignment of the beginning of the big memory block from which the pool is created. Pool will start at a multiple of this value. Each page will then begin at a multiple of memoryPoolPageSize from the beginning of big block. |
134
135
| equipment-*| consoleStatsUpdateTime | double | 0 | If set, number of seconds between printing statistics on console. |
135
136
| equipment-*| ctpMode | int | 0 | If set, the detector field (CTP run mask) is checked. Incoming data is discarded until a new bit is set, and discarded again after this bit is unset. Automatically implies rdhCheckDetectorField=1 and rdhCheckDetectorField=1. |
@@ -210,8 +211,10 @@ The parameters related to 3rd-party libraries are described here for convenience
210
211
| readout | maxMsgError | int | 0 | If non-zero, maximum number of error messages allowed while running. Readout stops when threshold is reached. |
211
212
| readout | maxMsgWarning | int | 0 | If non-zero, maximum number of error messages allowed while running. Readout stops when threshold is reached. |
212
213
| readout | memoryPoolStatsEnabled | int | 0 | Global debugging flag to enable statistics on memory pool usage (printed to stdout when pool released). |
214
+
| readout | numberOfRuns | int | 1 | In standalone mode, number of runs to execute (ie START/STOP cycles). |
213
215
| readout | rate | double | -1 | Data rate limit, per equipment, in Hertz. -1 for unlimited. |
214
216
| readout | tfRateLimit | double | 0 | When set, the output is limited to a given timeframe rate. |
217
+
| readout | tfRateLimitMode | int | 0 | Defines the source for TF rate limit: 0 = use TF id, 1 = use number of TF. |
215
218
| readout | timeframeServerUrl | string || The address to be used to publish current timeframe, e.g. to be used as reference clock for other readout instances. |
216
219
| readout | timeStart | string || In standalone mode, time at which to execute start. If not set, immediately. |
217
220
| readout | timeStop | string || In standalone mode, time at which to execute stop. If not set, on int/term/quit signal. |
Copy file name to clipboardExpand all lines: doc/releaseNotes.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -571,5 +571,9 @@ This file describes the main feature changes for each readout.exe released versi
571
571
- Added consistency check of orbit vs timestamp when large gas in TF ids detected.
572
572
- Updated configuration parameters documentation.
573
573
574
-
## next version
574
+
## v2.21.0 - 03/08/2023
575
575
- When running from the command line, the environment variable O2_RUN can be used to set the run number. It is set to 0 by default, i.e. undefined run number.
576
+
- Updated configuration parameters:
577
+
- added readout.numberOfRuns: in standalone mode, number of START/STOP cycles to execute (used for testing).
578
+
- added readout.tfRateLimitMode: can be set to 1 to use number of TF instead of computed TF id for rate throttling. Useful when replaying files with jumps in TF ids. (not needed with autoTimeframeId)
579
+
- added equipment.autoTimeframeId: to force incremental timeframe IDs. Useful when replaying files with jumps in TF ids. BC still used to detect boundaries between TFs.
// configuration parameter: | equipment-* | autoTimeframeId | int | 0 | When set, timeframe IDs are generated incrementally instead of being computed from trigger orbit counters. Useful to replay files with unordered / gap between TF. BC still used to detect boundaries between TFs. |
Copy file name to clipboardExpand all lines: src/ReadoutEquipment.h
+3Lines changed: 3 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -184,6 +184,9 @@ class ReadoutEquipment
184
184
int cfgDisableTimeframes = 0; // When set, all TF features disabled
185
185
RateRegulator TFregulator; // clock counter for TF rate checks
186
186
DataBlockContainerReference throttlePendingBlock; // in case TF rate limit was reached, a block may be set aside for later (when it belongs to next TF)
187
+
int cfgAutoTimeframeId = 0; // when set, TFids are generated incrementally instead of taken from RDH BC.
188
+
uint64_t autoTimeframeIdLatestFromBC = undefinedTimeframeId; // latest TFid (computed from BC)
189
+
uint64_t autoTimeframeIdCounter = 0; // TFid counter for sequence
187
190
188
191
bool isRdhEquipment = false; // to be set true for RDH equipments
@@ -902,6 +905,9 @@ int Readout::_configure(const boost::property_tree::ptree& properties)
902
905
903
906
// configuration parameter: | readout | timeStop | string | | In standalone mode, time at which to execute stop. If not set, on int/term/quit signal. |
904
907
scanTime("readout.timeStop", cfgTimeStop);
908
+
909
+
// configuration parameter: | readout | numberOfRuns | int | 1 | In standalone mode, number of runs to execute (ie START/STOP cycles). |
// configuration parameter: | readout | disableTimeframes | int | 0 | When set, all timeframe related features are disabled (this may supersede other config parameters). |
Copy file name to clipboardExpand all lines: src/readoutConfigEditor.tcl
+3Lines changed: 3 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -76,6 +76,7 @@ set configurationParametersDescriptor {
76
76
| consumer-zmq-* | maxRate | int| 0 | Maximum number of pages to publish per second. The associated memory copy has an impact on cpu load, so this should be limited when one does not use all the data (eg for eventDump). |
77
77
| consumer-zmq-* | pagesPerBurst | int | 1 | Number of consecutive pages guaranteed to be part of each publish sequence. The maxRate limit is checked at the end of each burst. |
78
78
| consumer-zmq-* | zmqOptions | string | | Additional ZMQ options, as a comma-separated list of key=value pairs. Possible keys: ZMQ_CONFLATE, ZMQ_IO_THREADS, ZMQ_LINGER, ZMQ_SNDBUF, ZMQ_SNDHWM, ZMQ_SNDTIMEO. |
79
+
| equipment-* | autoTimeframeId | int | 0 | When set, timeframe IDs are generated incrementally instead of being computed from trigger orbit counters. Useful to replay files with unordered / gap between TF. BC still used to detect boundaries between TFs. |
79
80
| equipment-* | blockAlign | bytes | 2M | Alignment of the beginning of the big memory block from which the pool is created. Pool will start at a multiple of this value. Each page will then begin at a multiple of memoryPoolPageSize from the beginning of big block. |
80
81
| equipment-* | consoleStatsUpdateTime | double | 0 | If set, number of seconds between printing statistics on console. |
81
82
| equipment-* | ctpMode | int | 0 | If set, the detector field (CTP run mask) is checked. Incoming data is discarded until a new bit is set, and discarded again after this bit is unset. Automatically implies rdhCheckDetectorField=1 and rdhCheckDetectorField=1. |
@@ -156,8 +157,10 @@ set configurationParametersDescriptor {
156
157
| readout | maxMsgError | int | 0 | If non-zero, maximum number of error messages allowed while running. Readout stops when threshold is reached. |
157
158
| readout | maxMsgWarning | int | 0 | If non-zero, maximum number of error messages allowed while running. Readout stops when threshold is reached. |
158
159
| readout | memoryPoolStatsEnabled | int | 0 | Global debugging flag to enable statistics on memory pool usage (printed to stdout when pool released). |
160
+
| readout | numberOfRuns | int | 1 | In standalone mode, number of runs to execute (ie START/STOP cycles). |
159
161
| readout | rate | double | -1 | Data rate limit, per equipment, in Hertz. -1 for unlimited. |
160
162
| readout | tfRateLimit | double | 0 | When set, the output is limited to a given timeframe rate. |
163
+
| readout | tfRateLimitMode | int | 0 | Defines the source for TF rate limit: 0 = use TF id, 1 = use number of TF. |
161
164
| readout | timeframeServerUrl | string | | The address to be used to publish current timeframe, e.g. to be used as reference clock for other readout instances. |
162
165
| readout | timeStart | string | | In standalone mode, time at which to execute start. If not set, immediately. |
163
166
| readout | timeStop | string | | In standalone mode, time at which to execute stop. If not set, on int/term/quit signal. |
0 commit comments