Prototype of a tool to print on-disk size of art Data Products
I wrote a prototype of a stand alone tool that prints information about the size-on disk of data products. I would like this tool to be adopted by the art team and that it will find an appropriate home within the art suite.
The tool will open an art event-data file and print the on-disk size of
- All of the top level TTrees
- The RootFileDB
If any of the top level TTrees occupy more than a given fraction of the total disk space, the code will also print the on-disk size of each TBranch (with the Event, Run and SubRun TTrees, each TBranch corresponds to one data product ).
I have attached a gzipped tar file of the source and Makefile for the tool.
There is a prototype of documentation at:
#8 Updated by Kyle Knoepfel over 4 years ago
- Status changed from Assigned to Resolved
- Assignee changed from Paul Russo to Kyle Knoepfel
- % Done changed from 0 to 100
Your prototype code has been implemented as the executable
product_sizes_dumper, housed in
art/Framework/IO/Root/. To execute the binary, one need simply specify
product_sizes_dumper (and arguments) with no qualification at the command line as the appropriate path is included on
PATH. The code has been adopted largely as is, with the exception of the
Arguments class, which has been removed in favor of the
boost::program_options library, consistent with executable options implemented elsewhere within
The options now look like:
[knoepfel@woof] product_sizes_dumper --help product_sizes_dumper <options> [<source-file>]+: -h [ --help ] this help message. -f [ --fraction ] arg (=0.05) floating point number on the range [0,1]. If a TTree occupies a fraction on disk of the total space in the file that is less than <f>, then a detailed analysis of its branches will not be done -s [ --source ] arg source data file (multiple OK)
Thank you for the code, and with your approval, we'd like to use (some version of) your documentation, which you provided in the description of this issue.
Implemented with 1981719002131adda5e5a6ae007135e66c2fce67.