Common user-tunable settings for storing ntuples.
All page sink classes need to support the common options.
Definition at line 49 of file RNTupleOptions.hxx.
Public Member Functions | |
virtual | ~RNTupleWriteOptions ()=default |
virtual std::unique_ptr< RNTupleWriteOptions > | Clone () const |
std::size_t | GetApproxUnzippedPageSize () const |
std::size_t | GetApproxZippedClusterSize () const |
int | GetCompression () const |
ENTupleContainerFormat | GetContainerFormat () const |
std::size_t | GetMaxUnzippedClusterSize () const |
bool | GetUseBufferedWrite () const |
void | SetApproxUnzippedPageSize (std::size_t val) |
void | SetApproxZippedClusterSize (std::size_t val) |
void | SetCompression (int val) |
void | SetCompression (RCompressionSetting::EAlgorithm algorithm, int compressionLevel) |
void | SetContainerFormat (ENTupleContainerFormat val) |
void | SetMaxUnzippedClusterSize (std::size_t val) |
void | SetUseBufferedWrite (bool val) |
Private Attributes | |
std::size_t | fApproxUnzippedPageSize = 64 * 1024 |
Should be just large enough so that the compression ratio does not benefit much more from larger pages. | |
std::size_t | fApproxZippedClusterSize = 50 * 1000 * 1000 |
Approximation of the target compressed cluster size. | |
int | fCompression {RCompressionSetting::EDefaults::kUseAnalysis} |
ENTupleContainerFormat | fContainerFormat {ENTupleContainerFormat::kTFile} |
std::size_t | fMaxUnzippedClusterSize = 512 * 1024 * 1024 |
Memory limit for committing a cluster: with very high compression ratio, we need a limit on how large the I/O buffer can grow during writing. | |
bool | fUseBufferedWrite = true |
#include <ROOT/RNTupleOptions.hxx>
|
virtualdefault |
|
virtual |
Reimplemented in ROOT::Experimental::RNTupleWriteOptionsDaos.
Definition at line 45 of file RNTupleOptions.cxx.
|
inline |
Definition at line 83 of file RNTupleOptions.hxx.
|
inline |
Definition at line 77 of file RNTupleOptions.hxx.
|
inline |
Definition at line 68 of file RNTupleOptions.hxx.
|
inline |
Definition at line 74 of file RNTupleOptions.hxx.
|
inline |
Definition at line 80 of file RNTupleOptions.hxx.
|
inline |
Definition at line 86 of file RNTupleOptions.hxx.
void ROOT::Experimental::RNTupleWriteOptions::SetApproxUnzippedPageSize | ( | std::size_t | val | ) |
Definition at line 62 of file RNTupleOptions.cxx.
void ROOT::Experimental::RNTupleWriteOptions::SetApproxZippedClusterSize | ( | std::size_t | val | ) |
Definition at line 50 of file RNTupleOptions.cxx.
Definition at line 69 of file RNTupleOptions.hxx.
|
inline |
Definition at line 70 of file RNTupleOptions.hxx.
|
inline |
Definition at line 75 of file RNTupleOptions.hxx.
void ROOT::Experimental::RNTupleWriteOptions::SetMaxUnzippedClusterSize | ( | std::size_t | val | ) |
Definition at line 56 of file RNTupleOptions.cxx.
Definition at line 87 of file RNTupleOptions.hxx.
|
private |
Should be just large enough so that the compression ratio does not benefit much more from larger pages.
Unless the cluster is too small to contain a sufficiently large page, pages are fApproxUnzippedPageSize in size and tail pages (the last page in a cluster) is between fApproxUnzippedPageSize/2 and fApproxUnzippedPageSize * 1.5 in size.
Definition at line 61 of file RNTupleOptions.hxx.
|
private |
Approximation of the target compressed cluster size.
Definition at line 53 of file RNTupleOptions.hxx.
|
private |
Definition at line 50 of file RNTupleOptions.hxx.
|
private |
Definition at line 51 of file RNTupleOptions.hxx.
|
private |
Memory limit for committing a cluster: with very high compression ratio, we need a limit on how large the I/O buffer can grow during writing.
Definition at line 56 of file RNTupleOptions.hxx.
|
private |
Definition at line 62 of file RNTupleOptions.hxx.