Skip to content

Commit

Permalink
Merge pull request #30889 from schneiml/dqm-optimize-dqmio
Browse files Browse the repository at this point in the history
DQM: Optimize DQMIO memory use
  • Loading branch information
cmsbuild committed Jul 30, 2020
2 parents e85a28b + c867554 commit 5d1f62c
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions DQMServices/FwkIO/plugins/DQMRootSource.cc
Original file line number Diff line number Diff line change
Expand Up @@ -658,6 +658,10 @@ void DQMRootSource::readElements() {
if (metadata.m_type != kNoTypesStored) {
std::shared_ptr<TreeReaderBase> reader = m_treeReaders[metadata.m_type];
TTree* tree = dynamic_cast<TTree*>(metadata.m_file->Get(kTypeNames[metadata.m_type]));
// The Reset() below screws up the tree, so we need to re-read it from file
// before use here.
tree->Refresh();

reader->setTree(tree);

ULong64_t index = metadata.m_firstIndex;
Expand All @@ -666,6 +670,9 @@ void DQMRootSource::readElements() {
for (; index != endIndex; ++index) {
reader->read(index, edm::Service<DQMStore>().operator->(), metadata.m_run, metadata.m_lumi);
}
// Drop buffers in the TTree. This reduces memory consuption while the tree
// just sits there and waits for the next block to be read.
tree->Reset();
}
}

Expand Down

0 comments on commit 5d1f62c

Please sign in to comment.