Common user-tunable settings for reading RNTuples.
All page source classes need to support the common options.
| Option name | Type | Default | Description |
|---|---|---|---|
ClusterCache | EClusterCache | EClusterCache::kDefault | Controls if the prefetcher (including the prefetcher thread) is used |
UseImplicitMT | EImplicitMT | EImplicitMT::kDefault | Allows to disable parallel page compression and decompression even if ROOT uses implicit MT. This is useful, e.g., in the context of RDataFrame where the threads are fully managed by RDataFrame. |
EMetadataMode | EMetadataMode | EMetadataMode::kDefault | Set whether cluster metadata (page locations) are loaded entirely on open or on demand during entry iteration. By default, the RNTuple reader loads metadata on demand. |
EnableMetrics | bool | false | If true, the RNTupleReader will track metrics straight from its construction, as if calling RNTupleReader::EnableMetrics() before having created the object. |
Definition at line 93 of file RNTupleReadOptions.hxx.
Public Types | |
| enum class | EClusterCache { kOff , kOn , kDefault = kOn } |
| enum class | EImplicitMT { kOff , kDefault } |
| enum class | EMetadataMode { kEager , kOnDemand , kDefault = kOnDemand } |
Public Member Functions | |
| EClusterCache | GetClusterCache () const |
| bool | GetEnableMetrics () const |
| EMetadataMode | GetMetadataMode () const |
| EImplicitMT | GetUseImplicitMT () const |
| void | SetClusterCache (EClusterCache val) |
| void | SetEnableMetrics (bool val) |
| void | SetMetadataMode (EMetadataMode val) |
| void | SetUseImplicitMT (EImplicitMT val) |
Private Attributes | |
| unsigned int | fClusterBunchSize = 1 |
| The number of cluster to be prefetched in a single batch; this option is transitional and will be replaced by an option that allows to control the amount of memory that the prefetcher uses. | |
| EClusterCache | fClusterCache = EClusterCache::kDefault |
| unsigned int | fClusterGroupBudget = 2 |
| The threshold for the number of concurrently loaded cluster group details as of which the cluster details of the least recently used cluster groups are evicted. | |
| bool | fEnableMetrics = false |
| std::uint64_t | fMaxEnvelopeSize = 1024 * 1024 * 1024 |
| Largest header or footer envelope a page source will accept from an anchor it does not fully trust, such as the S3 anchor, which is a separately stored object. | |
| EMetadataMode | fMetadataMode = EMetadataMode::kDefault |
| EImplicitMT | fUseImplicitMT = EImplicitMT::kDefault |
Friends | |
| class | Internal::RNTupleReadOptionsManip |
#include <ROOT/RNTupleReadOptions.hxx>
|
strong |
| Enumerator | |
|---|---|
| kOff | |
| kOn | |
| kDefault | |
Definition at line 97 of file RNTupleReadOptions.hxx.
|
strong |
| Enumerator | |
|---|---|
| kOff | |
| kDefault | |
Definition at line 103 of file RNTupleReadOptions.hxx.
|
strong |
| Enumerator | |
|---|---|
| kEager | |
| kOnDemand | |
| kDefault | |
Definition at line 108 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 131 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 140 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 137 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 134 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 132 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 141 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 138 of file RNTupleReadOptions.hxx.
|
inline |
Definition at line 135 of file RNTupleReadOptions.hxx.
|
friend |
Definition at line 94 of file RNTupleReadOptions.hxx.
|
private |
The number of cluster to be prefetched in a single batch; this option is transitional and will be replaced by an option that allows to control the amount of memory that the prefetcher uses.
Definition at line 118 of file RNTupleReadOptions.hxx.
|
private |
Definition at line 115 of file RNTupleReadOptions.hxx.
|
private |
The threshold for the number of concurrently loaded cluster group details as of which the cluster details of the least recently used cluster groups are evicted.
The budget can be overspent due to pinned cluster groups. Currently a private option that cannot be changed by the user.
Definition at line 122 of file RNTupleReadOptions.hxx.
|
private |
Definition at line 125 of file RNTupleReadOptions.hxx.
|
private |
Largest header or footer envelope a page source will accept from an anchor it does not fully trust, such as the S3 anchor, which is a separately stored object.
Guards the allocation made from those sizes.
Definition at line 128 of file RNTupleReadOptions.hxx.
|
private |
Definition at line 124 of file RNTupleReadOptions.hxx.
|
private |
Definition at line 123 of file RNTupleReadOptions.hxx.