Project

General

Profile

Feature #4998

Control whether RootOutput stores any Events or Subruns

Added by Christopher Backhouse over 5 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
I/O
Target version:
Start date:
11/21/2013
Due date:
% Done:

100%

Estimated time:
16.00 h
Spent time:
Scope:
Internal
Experiment:
NOvA
SSI Package:
art
Duration:

Description

Per phone discussion with Marc and Brian.

Implement fcl options on the RootOutput module "WriteEvents" and "WriteSubruns" (or whatever names). When set to false these prevent Event or Subrun objects being written to the output file. WriteSubruns: false implies WriteEvents: false.

This enables summary files created from many subruns to have much reduced overhead, without having to upgrade the whole filter system as discussed in Issue 4916.


Related issues

Related to art - Support #10545: Returning false from EDFilter::beginSubRun() does not skip the eventsClosed2015-10-15

History

#1 Updated by Marc Paterno over 5 years ago

  • Status changed from New to Accepted
  • Experiment NOvA added
  • Experiment deleted (-)

After discussion with Chris Backhouse and Brian Rebel, our understanding of the need of NOvA is to be able to configure RootOutput modules to limit their output in new ways.

1. NOvA wants to have the ability to tell RootOutput to write no event objects. Under this configuration, the output file will still contain subrun and run objects, but no event objects. We did not discuss whether or not it is acceptable to write out an empty Events tree, and an empty EventsMeta tree. At least at first, I think this is what should be done.

2. NOvA wants the ability to tell RootOutput to write no subrun objects. Under this configuration, neither events nor subruns will be written out. The output will still contain run objects. We did not discuss whether the Events or SubRuns trees, or their related metadata trees, should be written out empty or not present at all. Again, I think we should write out empty trees in the first version.

#2 Updated by Christopher Green about 5 years ago

  • Category set to I/O
  • Target version set to 1.13.00
  • Estimated time set to 16.00 h
  • SSI Package art added
  • SSI Package deleted ()

#3 Updated by Christopher Green over 4 years ago

  • Priority changed from High to Normal

#4 Updated by Christopher Green over 4 years ago

  • Status changed from Accepted to Assigned
  • Assignee set to Kyle Knoepfel

Relaxed to normal priority given its age without pings from requesting experiment. However, the work is now assigned for the next release.

#5 Updated by Christopher Green over 4 years ago

  • Target version changed from 1.13.00 to 1.14.00

At the previous stakeholders meeting, the priority of the next release has been moved up, therefore this is bumped to the next-but-one feature release.

#6 Updated by Kyle Knoepfel over 4 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

This feature has been implemented according to the description of Marc's comments in (1) above. To drop all events/subruns from being written to the output file, the following FHiCL configurations are supported:

outputs: 
{
   output : {

      module_type: RootOutput
      fileName: "some_file_name.root" 

      #===========================================================================
      # Choose from one of the following options
      #
      # 1) default behavior - does not need to be specified in FHiCL

      dropAllEvents : false
      dropAllSubRuns: false

      # 2) drop all events

      dropAllEvents : true

      # 3a) drop all events and subruns (writing events disabled by default if the following is specified)

      dropAllSubRuns: true

      # 3b) drop all events and subruns (same semantics as 3a)

      dropAllEvents : true
      dropAllSubRuns: true

      # 4) the following combination is illegal (art will throw)
      #
      # dropAllEvents : false
      # dropAllSubRuns: true

   }
}

If the events or subruns are dropped, the principal and metadata trees are still written to the output file, but with zero events.

Implemented with commit af9c495a6c06eade5c8d086ab40e12f2d3b776e3.

#7 Updated by Kyle Knoepfel over 4 years ago

  • Status changed from Resolved to Closed

#8 Updated by Christopher Green almost 4 years ago

  • Related to Support #10545: Returning false from EDFilter::beginSubRun() does not skip the events added


Also available in: Atom PDF