|
12 | 12 | #ifndef O2_FRAMEWORK_DEVICEMETRICSINFO_H_ |
13 | 13 | #define O2_FRAMEWORK_DEVICEMETRICSINFO_H_ |
14 | 14 |
|
15 | | -#include "Framework/RuntimeError.h" |
16 | 15 | #include "Framework/CompilerBuiltins.h" |
17 | 16 | #include "Framework/Traits.h" |
18 | 17 | #include <array> |
|
21 | 20 | #include <span> |
22 | 21 | #include <string> |
23 | 22 | #include <vector> |
| 23 | +#include <iosfwd> |
24 | 24 |
|
25 | 25 | namespace o2::framework |
26 | 26 | { |
@@ -191,62 +191,8 @@ struct DeviceMetricsInfoHelpers { |
191 | 191 | } |
192 | 192 | } |
193 | 193 |
|
194 | | - static void clearMetrics(std::vector<DeviceMetricsInfo>& infos) |
195 | | - { |
196 | | - for (auto& info : infos) { |
197 | | - info.intMetrics.clear(); |
198 | | - info.uint64Metrics.clear(); |
199 | | - info.stringMetrics.clear(); // We do not keep so many strings as metrics as history is less relevant. |
200 | | - info.floatMetrics.clear(); |
201 | | - info.enumMetrics.clear(); |
202 | | - info.intTimestamps.clear(); |
203 | | - info.uint64Timestamps.clear(); |
204 | | - info.floatTimestamps.clear(); |
205 | | - info.stringTimestamps.clear(); |
206 | | - info.enumTimestamps.clear(); |
207 | | - info.max.clear(); |
208 | | - info.min.clear(); |
209 | | - info.average.clear(); |
210 | | - info.minDomain.clear(); |
211 | | - info.maxDomain.clear(); |
212 | | - info.metricLabels.clear(); |
213 | | - info.metricPrefixes.clear(); |
214 | | - info.metricLabelsAlphabeticallySortedIdx.clear(); |
215 | | - info.metricLabelsPrefixesSortedIdx.clear(); |
216 | | - info.metrics.clear(); |
217 | | - info.changed.clear(); |
218 | | - } |
219 | | - } |
220 | | - static size_t metricsStorageSize(std::span<DeviceMetricsInfo const> infos) |
221 | | - { |
222 | | - // Count the size of the metrics storage |
223 | | - size_t totalSize = 0; |
224 | | - for (auto& info : infos) { |
225 | | - totalSize += info.intMetrics.size() * sizeof(MetricsStorage<int>); |
226 | | - totalSize += info.uint64Metrics.size() * sizeof(MetricsStorage<uint64_t>); |
227 | | - totalSize += info.stringMetrics.size() * sizeof(MetricsStorage<StringMetric>); |
228 | | - totalSize += info.floatMetrics.size() * sizeof(MetricsStorage<float>); |
229 | | - totalSize += info.enumMetrics.size() * sizeof(MetricsStorage<int8_t>); |
230 | | - totalSize += info.intTimestamps.size() * sizeof(TimestampsStorage<int>); |
231 | | - totalSize += info.uint64Timestamps.size() * sizeof(TimestampsStorage<uint64_t>); |
232 | | - totalSize += info.floatTimestamps.size() * sizeof(TimestampsStorage<float>); |
233 | | - totalSize += info.stringTimestamps.size() * sizeof(TimestampsStorage<StringMetric>); |
234 | | - totalSize += info.enumTimestamps.size() * sizeof(TimestampsStorage<int8_t>); |
235 | | - totalSize += info.max.size() * sizeof(float); |
236 | | - totalSize += info.min.size() * sizeof(float); |
237 | | - totalSize += info.average.size() * sizeof(float); |
238 | | - totalSize += info.minDomain.size() * sizeof(size_t); |
239 | | - totalSize += info.maxDomain.size() * sizeof(size_t); |
240 | | - totalSize += info.metricLabels.size() * sizeof(MetricLabel); |
241 | | - totalSize += info.metricPrefixes.size() * sizeof(MetricPrefix); |
242 | | - totalSize += info.metricLabelsAlphabeticallySortedIdx.size() * sizeof(MetricLabelIndex); |
243 | | - totalSize += info.metricLabelsPrefixesSortedIdx.size() * sizeof(MetricPrefixIndex); |
244 | | - totalSize += info.metrics.size() * sizeof(MetricInfo); |
245 | | - totalSize += info.changed.size() * sizeof(bool); |
246 | | - } |
247 | | - |
248 | | - return totalSize; |
249 | | - } |
| 194 | + static void clearMetrics(std::vector<DeviceMetricsInfo>& infos); |
| 195 | + static size_t metricsStorageSize(std::span<DeviceMetricsInfo const> infos); |
250 | 196 | }; |
251 | 197 |
|
252 | 198 | } // namespace o2::framework |
|
0 commit comments