Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
ROOT::Experimental::RNTupleWriteOptionsDaos Class Reference

DAOS-specific user-tunable settings for storing ntuples.

Definition at line 35 of file RNTupleWriteOptionsDaos.hxx.

Public Types

enum class  EImplicitMT { kOff , kOn , kDefault }

Public Member Functions

 ~RNTupleWriteOptionsDaos () override=default
std::unique_ptr< RNTupleWriteOptionsClone () const override
std::size_t GetApproxZippedClusterSize () const
std::uint32_t GetCompression () const
bool GetEnablePageChecksums () const
bool GetEnableSamePageMerging () const
std::size_t GetInitialUnzippedPageSize () const
std::uint64_t GetMaxKeySize () const
std::size_t GetMaxUnzippedClusterSize () const
std::size_t GetMaxUnzippedPageSize () const
const std::string & GetObjectClass () const
std::size_t GetPageBufferBudget () const
bool GetUseBufferedWrite () const
bool GetUseDirectIO () const
EImplicitMT GetUseImplicitMT () const
std::size_t GetWriteBufferSize () const
void SetApproxZippedClusterSize (std::size_t val)
void SetCompression (RCompressionSetting::EAlgorithm::EValues algorithm, int compressionLevel)
void SetCompression (std::uint32_t val)
void SetEnablePageChecksums (bool val)
 Note that turning off page checksums will also turn off the same page merging optimization (see tuning.md).
void SetEnableSamePageMerging (bool val)
void SetInitialUnzippedPageSize (std::size_t val)
void SetMaxUnzippedClusterSize (std::size_t val)
void SetMaxUnzippedPageSize (std::size_t val)
void SetObjectClass (const std::string &val)
 Set the object class used to generate OIDs that relate to user data.
void SetPageBufferBudget (std::size_t val)
void SetUseBufferedWrite (bool val)
void SetUseDirectIO (bool val)
void SetUseImplicitMT (EImplicitMT val)
void SetWriteBufferSize (std::size_t val)

Static Public Attributes

static constexpr std::uint64_t kDefaultMaxKeySize = 0x4000'0000

Protected Attributes

std::size_t fApproxZippedClusterSize = 128 * 1024 * 1024
std::uint32_t fCompression {RCompressionSetting::EDefaults::kUseGeneralPurpose}
bool fEnablePageChecksums = true
bool fEnableSamePageMerging = true
std::size_t fInitialUnzippedPageSize = 256
std::uint64_t fMaxKeySize = kDefaultMaxKeySize
 Specifies the max size of a payload storeable into a single TKey.
std::size_t fMaxUnzippedClusterSize = 10 * fApproxZippedClusterSize
std::size_t fMaxUnzippedPageSize = 1024 * 1024
std::size_t fPageBufferBudget = 0
bool fUseBufferedWrite = true
bool fUseDirectIO = false
EImplicitMT fUseImplicitMT = EImplicitMT::kDefault
std::size_t fWriteBufferSize = 4 * 1024 * 1024

Private Attributes

std::string fObjectClass {"SX"}

#include <ROOT/RNTupleWriteOptionsDaos.hxx>

Inheritance diagram for ROOT::Experimental::RNTupleWriteOptionsDaos:
ROOT::RNTupleWriteOptions

Member Enumeration Documentation

◆ EImplicitMT

enum class ROOT::RNTupleWriteOptions::EImplicitMT
stronginherited
Enumerator
kOff 
kOn 
kDefault 

Definition at line 183 of file RNTupleWriteOptions.hxx.

Constructor & Destructor Documentation

◆ ~RNTupleWriteOptionsDaos()

ROOT::Experimental::RNTupleWriteOptionsDaos::~RNTupleWriteOptionsDaos ( )
overridedefault

Member Function Documentation

◆ Clone()

std::unique_ptr< RNTupleWriteOptions > ROOT::Experimental::RNTupleWriteOptionsDaos::Clone ( ) const
inlineoverridevirtual

Reimplemented from ROOT::RNTupleWriteOptions.

Definition at line 40 of file RNTupleWriteOptionsDaos.hxx.

◆ GetApproxZippedClusterSize()

std::size_t ROOT::RNTupleWriteOptions::GetApproxZippedClusterSize ( ) const
inlineinherited

Definition at line 224 of file RNTupleWriteOptions.hxx.

◆ GetCompression()

std::uint32_t ROOT::RNTupleWriteOptions::GetCompression ( ) const
inlineinherited

Definition at line 217 of file RNTupleWriteOptions.hxx.

◆ GetEnablePageChecksums()

bool ROOT::RNTupleWriteOptions::GetEnablePageChecksums ( ) const
inlineinherited

Definition at line 251 of file RNTupleWriteOptions.hxx.

◆ GetEnableSamePageMerging()

bool ROOT::RNTupleWriteOptions::GetEnableSamePageMerging ( ) const
inlineinherited

Definition at line 261 of file RNTupleWriteOptions.hxx.

◆ GetInitialUnzippedPageSize()

std::size_t ROOT::RNTupleWriteOptions::GetInitialUnzippedPageSize ( ) const
inlineinherited

Definition at line 230 of file RNTupleWriteOptions.hxx.

◆ GetMaxKeySize()

std::uint64_t ROOT::RNTupleWriteOptions::GetMaxKeySize ( ) const
inlineinherited

Definition at line 264 of file RNTupleWriteOptions.hxx.

◆ GetMaxUnzippedClusterSize()

std::size_t ROOT::RNTupleWriteOptions::GetMaxUnzippedClusterSize ( ) const
inlineinherited

Definition at line 227 of file RNTupleWriteOptions.hxx.

◆ GetMaxUnzippedPageSize()

std::size_t ROOT::RNTupleWriteOptions::GetMaxUnzippedPageSize ( ) const
inlineinherited

Definition at line 233 of file RNTupleWriteOptions.hxx.

◆ GetObjectClass()

const std::string & ROOT::Experimental::RNTupleWriteOptionsDaos::GetObjectClass ( ) const
inline

Definition at line 45 of file RNTupleWriteOptionsDaos.hxx.

◆ GetPageBufferBudget()

std::size_t ROOT::RNTupleWriteOptions::GetPageBufferBudget ( ) const
inherited

Definition at line 84 of file RNTupleWriteOptions.cxx.

◆ GetUseBufferedWrite()

bool ROOT::RNTupleWriteOptions::GetUseBufferedWrite ( ) const
inlineinherited

Definition at line 239 of file RNTupleWriteOptions.hxx.

◆ GetUseDirectIO()

bool ROOT::RNTupleWriteOptions::GetUseDirectIO ( ) const
inlineinherited

Definition at line 242 of file RNTupleWriteOptions.hxx.

◆ GetUseImplicitMT()

EImplicitMT ROOT::RNTupleWriteOptions::GetUseImplicitMT ( ) const
inlineinherited

Definition at line 248 of file RNTupleWriteOptions.hxx.

◆ GetWriteBufferSize()

std::size_t ROOT::RNTupleWriteOptions::GetWriteBufferSize ( ) const
inlineinherited

Definition at line 245 of file RNTupleWriteOptions.hxx.

◆ SetApproxZippedClusterSize()

void ROOT::RNTupleWriteOptions::SetApproxZippedClusterSize ( std::size_t val)
inherited

Definition at line 52 of file RNTupleWriteOptions.cxx.

◆ SetCompression() [1/2]

void ROOT::RNTupleWriteOptions::SetCompression ( RCompressionSetting::EAlgorithm::EValues algorithm,
int compressionLevel )
inlineinherited

Definition at line 219 of file RNTupleWriteOptions.hxx.

◆ SetCompression() [2/2]

void ROOT::RNTupleWriteOptions::SetCompression ( std::uint32_t val)
inlineinherited

Definition at line 218 of file RNTupleWriteOptions.hxx.

◆ SetEnablePageChecksums()

void ROOT::RNTupleWriteOptions::SetEnablePageChecksums ( bool val)
inlineinherited

Note that turning off page checksums will also turn off the same page merging optimization (see tuning.md).

Definition at line 253 of file RNTupleWriteOptions.hxx.

◆ SetEnableSamePageMerging()

void ROOT::RNTupleWriteOptions::SetEnableSamePageMerging ( bool val)
inherited

Definition at line 76 of file RNTupleWriteOptions.cxx.

◆ SetInitialUnzippedPageSize()

void ROOT::RNTupleWriteOptions::SetInitialUnzippedPageSize ( std::size_t val)
inherited

Definition at line 64 of file RNTupleWriteOptions.cxx.

◆ SetMaxUnzippedClusterSize()

void ROOT::RNTupleWriteOptions::SetMaxUnzippedClusterSize ( std::size_t val)
inherited

Definition at line 58 of file RNTupleWriteOptions.cxx.

◆ SetMaxUnzippedPageSize()

void ROOT::RNTupleWriteOptions::SetMaxUnzippedPageSize ( std::size_t val)
inherited

Definition at line 70 of file RNTupleWriteOptions.cxx.

◆ SetObjectClass()

void ROOT::Experimental::RNTupleWriteOptionsDaos::SetObjectClass ( const std::string & val)
inline

Set the object class used to generate OIDs that relate to user data.

Any OC_xxx constant defined in daos_obj_class.h may be used here without the OC_ prefix.

Definition at line 49 of file RNTupleWriteOptionsDaos.hxx.

◆ SetPageBufferBudget()

void ROOT::RNTupleWriteOptions::SetPageBufferBudget ( std::size_t val)
inlineinherited

Definition at line 237 of file RNTupleWriteOptions.hxx.

◆ SetUseBufferedWrite()

void ROOT::RNTupleWriteOptions::SetUseBufferedWrite ( bool val)
inlineinherited

Definition at line 240 of file RNTupleWriteOptions.hxx.

◆ SetUseDirectIO()

void ROOT::RNTupleWriteOptions::SetUseDirectIO ( bool val)
inlineinherited

Definition at line 243 of file RNTupleWriteOptions.hxx.

◆ SetUseImplicitMT()

void ROOT::RNTupleWriteOptions::SetUseImplicitMT ( EImplicitMT val)
inlineinherited

Definition at line 249 of file RNTupleWriteOptions.hxx.

◆ SetWriteBufferSize()

void ROOT::RNTupleWriteOptions::SetWriteBufferSize ( std::size_t val)
inlineinherited

Definition at line 246 of file RNTupleWriteOptions.hxx.

Member Data Documentation

◆ fApproxZippedClusterSize

std::size_t ROOT::RNTupleWriteOptions::fApproxZippedClusterSize = 128 * 1024 * 1024
protectedinherited

Definition at line 197 of file RNTupleWriteOptions.hxx.

◆ fCompression

std::uint32_t ROOT::RNTupleWriteOptions::fCompression {RCompressionSetting::EDefaults::kUseGeneralPurpose}
protectedinherited

Definition at line 196 of file RNTupleWriteOptions.hxx.

◆ fEnablePageChecksums

bool ROOT::RNTupleWriteOptions::fEnablePageChecksums = true
protectedinherited

Definition at line 206 of file RNTupleWriteOptions.hxx.

◆ fEnableSamePageMerging

bool ROOT::RNTupleWriteOptions::fEnableSamePageMerging = true
protectedinherited

Definition at line 207 of file RNTupleWriteOptions.hxx.

◆ fInitialUnzippedPageSize

std::size_t ROOT::RNTupleWriteOptions::fInitialUnzippedPageSize = 256
protectedinherited

Definition at line 199 of file RNTupleWriteOptions.hxx.

◆ fMaxKeySize

std::uint64_t ROOT::RNTupleWriteOptions::fMaxKeySize = kDefaultMaxKeySize
protectedinherited

Specifies the max size of a payload storeable into a single TKey.

When writing an RNTuple to a ROOT file, any payload whose size exceeds this will be split into multiple keys.

Definition at line 210 of file RNTupleWriteOptions.hxx.

◆ fMaxUnzippedClusterSize

std::size_t ROOT::RNTupleWriteOptions::fMaxUnzippedClusterSize = 10 * fApproxZippedClusterSize
protectedinherited

Definition at line 198 of file RNTupleWriteOptions.hxx.

◆ fMaxUnzippedPageSize

std::size_t ROOT::RNTupleWriteOptions::fMaxUnzippedPageSize = 1024 * 1024
protectedinherited

Definition at line 200 of file RNTupleWriteOptions.hxx.

◆ fObjectClass

std::string ROOT::Experimental::RNTupleWriteOptionsDaos::fObjectClass {"SX"}
private

Definition at line 36 of file RNTupleWriteOptionsDaos.hxx.

◆ fPageBufferBudget

std::size_t ROOT::RNTupleWriteOptions::fPageBufferBudget = 0
protectedinherited

Definition at line 201 of file RNTupleWriteOptions.hxx.

◆ fUseBufferedWrite

bool ROOT::RNTupleWriteOptions::fUseBufferedWrite = true
protectedinherited

Definition at line 202 of file RNTupleWriteOptions.hxx.

◆ fUseDirectIO

bool ROOT::RNTupleWriteOptions::fUseDirectIO = false
protectedinherited

Definition at line 203 of file RNTupleWriteOptions.hxx.

◆ fUseImplicitMT

EImplicitMT ROOT::RNTupleWriteOptions::fUseImplicitMT = EImplicitMT::kDefault
protectedinherited

Definition at line 205 of file RNTupleWriteOptions.hxx.

◆ fWriteBufferSize

std::size_t ROOT::RNTupleWriteOptions::fWriteBufferSize = 4 * 1024 * 1024
protectedinherited

Definition at line 204 of file RNTupleWriteOptions.hxx.

◆ kDefaultMaxKeySize

std::uint64_t ROOT::RNTupleWriteOptions::kDefaultMaxKeySize = 0x4000'0000
staticconstexprinherited

Definition at line 190 of file RNTupleWriteOptions.hxx.


The documentation for this class was generated from the following file: