|
The answer has two parts. The first part is independent of the number of events. It consists of the space taken to buffer the columns during runtime. Assume we have a Ntuple with N columns and M events (rows).
(BSIZE+250)*N+20000 words
Where
BSIZE
is the Ntuple buffer size as can be set via the routine
HBSET
(default 1024 words).
The second part is taken by the RZ directory structure which contains the
keys that describe where the Ntuple extensions are stored (Ntuple extensions
are the column memory buffers which are flushed to disk, each extension has
a size of
BSIZE words).
For each key 6 words are needed. The number of keys
needed to store
M
events is dependent on the column packing factor (the
higher the packing factor is, the more events fit in a column buffer) and
on the
BSIZE
(the larger is
BSIZE
the fewer extensions need to be stored).
An upper limit is given by the key quota as specified in
HROPEN,
via
IQUEST(10)
(don't forget to include the
COMMON/QUEST/IQUEST(100)
in the routine where you call
HROPEN
). Assume you set
IQUEST(10)=65000
(the maximum) you will need at maximum:
65000*6 = 390000 words
Following from the above the maximum obtainable file size can easily be
determined:
IQUEST(10)*BSIZE*4 bytes
The number of events that can be stored in a file is approximately given by:
M = IQUEST(10)*BSIZE*packing/N
where packing is the average packing factor of all columns (all elements
of an array column are stored in the same buffer so they have a very small
packing factor).
![]() | Release Notes | Known bugs | FAQs | Contributions | Tutorial | Reference manual | Down load | Miscellaneous |