[ntuple] Provide a common set of performance counters in RPage{Sink,Source}#8397
Conversation
|
Starting build on |
|
Build failed on mac11.0/cxx17. Warnings:
|
There was a problem hiding this comment.
Hey Javier I think everything looks pretty good! You could also take the prefix argument out of
EnableDefaultMetricsand pass it in the initializer list:fMetrics("RPageSinkFile")to match what would happen if a derived class doesn't callEnableDefaultMetricsbut this is not a big deal.
Thanks! It's up to Jakob to decide that, but I would prefer leaving as-is, i.e. everything is taken care of in the call to EnableDefaultMetrics().
jblomer
left a comment
There was a problem hiding this comment.
Great, many thanks! Just two tiny suggestions for the comments.
This function searches the RNTupleMetrics instance on which it is called only, i.e. it is the 'get' counterpart of the `Contains()` function. It can be used by a callable fed into a `RNTupleCalcPerf` instance to query sibling counters.
8986cb0 to
8e0350e
Compare
|
Starting build on |
1 similar comment
|
Starting build on |
…PageSource These counters can be enabled in a subclass by calling `EnableDefaultMetrics()`. This set can be extended later via `fMetrics.MakeCounter<>()`. Alternatively, a subclass might provide its own default metrics object by overriding the `GetMetrics` member function
…ed by the base class
a80bca0 to
e9c844b
Compare
|
Starting build on |
This pull-request extends
RPageSinkandRPageSourceto provide a common set of performance counters that can be enabled in a subclass viaEnableDefaultMetrics(). Afterward, the set might be extended in a subclass via a call tofMetrics.MakeCounter<...>().This not only removes boilerplate code from subclasses, but also provides a useful set of regular/computed counters. A subclass, however, is still responsible for updating the base counters.
Alternatively, subclasses may still ignore the default set of metrics and provide their own
RNTupleMetricsobject by overriding theGetMetrics()member function.Closes issue #8360.