Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dual use tools: requirements and design David Adams BNL November 20, 2013 ASG tools working group.

Similar presentations


Presentation on theme: "Dual use tools: requirements and design David Adams BNL November 20, 2013 ASG tools working group."— Presentation transcript:

1 Dual use tools: requirements and design David Adams BNL November 20, 2013 ASG tools working group

2 Introduction We are working on ASG tools document I volunteered to work on requirements and recommendations o But am happy to contribute wherever I can help Following slides are my contributions to an outline o Not complete o Based on experience with AsgEx, discussions here and elsewhere – In particular the Jet/Etmiss group Chapters covered here o Use cases o Requirements o Recommendations (for design) With a little encouragement (or no discouragement), I will start to write the chapters for the latter two D. Adams, BNL Requirements and recommendations ASG tools November 20, 20132

3 Use cases A few ASG tool use cases Simple Root analysis on xAOD o Simple = selection and histogramming based on existing data Simple Root analysis on flat ntuple o Even if we don’t provide any support, we should discuss this Simple Analysis on the train Adding a jet collection to xAOD in Root o Tool to build jets runs a sequence of other tools D. Adams, BNL Requirements and recommendations ASG tools November 20, 20133

4 Requirements Requirements for ASG tools Tools should be framework independent o Run in Athena and Root/standalone (and some future framework) o Tool developer provides no framework-dependent code Tools are configurable, i.e. have properties that dictate their behavior o Tools have means to specify their properties: ID and type for each property o Users have standard means to configure tools, i.e. to set property values o It is possible to share a tool configuration between frameworks o Direct configuration of tools is possible (for development and interactive use) Tools present a user interface o There is a standard interface to initialize tools – Where property value can be captured (interpreted/cached) o There is standard interface for tools to display their property values o Developers provide additional interface appropriate to functionality o There are means for tools to share interfaces in whole or part – To allow users to easily exchange one tool for another Tools have means to log messages at a configurable level Tools have standard means to access data in the current event Tools are able to hold other tools (both are configurable) D. Adams, BNL Requirements and recommendations ASG tools November 20, 20134

5 Recommendations (1) General A tool is provided in the form of a C++ class o Class instances correspond to configurations Tools are required to inherit from AsgTool o AsgTool provides the interfaces for declaring properties, accessing event data and logging messages o In Athena, AsgEx accomplishes this by making the tool an AthAlgTool o ASG/PAT provides AsgTool and the infrastructure required to implement these interfaces for all supported framework (at least Athena and Root/standalone) ASG/PAT provides a base interface class ITool o ITool provides the interfaces for initialization and property display o Tools must inherit from this directly or via the following User interface may be specified in a separate tool interface class o Tool interface inherits from ITool o Tools may inherit one or more tool interfaces D. Adams, BNL Requirements and recommendations ASG tools November 20, 20135

6 Recommendations (2) Tool properties Allowed tool property types include: o Float, int, bool, string o Another tool specified by name (Athena public tools) o Vectors of any (one) of the above In Athena, the tool configuration follows standard job options syntax In Root/standalone, configuration is direct or via job options Property specification may be specified in a separate dedicated class o Tools may inherit one or more property specifications Property specification is via the Athena declareProperty(…) interface o Called from ctor of concrete tool or base specification D. Adams, BNL Requirements and recommendations ASG tools November 20, 20136

7 Recommendations (3) Tool access In Athena, tools are accessed via Athena tool handles In Root/standalone (and other frameworks?): o Tools may be constructed and configured directly o Preconfigured tools may be obtained by name from a tool repository The tool repository may be filled o Directly (i.e. by constructing and configuring a C++ object) o From job options file(s) ASG tool handles provide means to access tools in the repository o Accessed by name and interface (or concrete) type o Same syntax as Athena tool handles o Tools configured with other tools access those tools with tool handles D. Adams, BNL Requirements and recommendations ASG tools November 20, 20137

8 Extras Following summarize the status of AsgEX D. Adams, BNL Requirements and recommendations ASG tools November 20, 20138

9 AsgEx status Table summarizes the status of the AsgEx prototype For more info, see the AsgEx TwikiAsgEx Twiki D. Adams, BNL Requirements and recommendations ASG tools November 20, 20139 Frame work Input data Output data Build systemReleaseStatus AthenaAOD cmt17.2.XNo longer supported. RootD3PDD3PD (?)RootCore Builds and runs (15nov2013). Athena AOD, xAOD xAODcmt mig14 (18.9.0?) Builds and runs; problem reading back xAOD (15nov2013) Root/ Stand alone xAOD hwaf (wscript) Builds and runs but tools do not (yet) have access to event data (15nov2013).

10 AsgEx Jet tools A few prototype jet tools are available in AsgEx JetDumper (package AsgExDumper) o Writes info about jet collection to the log file o Three levels of detail: one line, one line/jet, all moments o Also works for some other collections: clusters PseudoJetBuilder (package AsgJetReco) o Constructs a collection of fastjet PseudoJet objects o From clusters or other jets JetFinder (package AsgExJetReco) o Finds jets and writes jet container o Input is the previous PseudoJet collection XAodClusterConverter (package AsgExJetReco) o Reads AOD clusters and write xAOD jets o Will write xAOD clusters when that xAOD is further along AsgRunner (package AsgExRun) o Runs a configurable series of AsgEx tools D. Adams, BNL Requirements and recommendations ASG tools November 20, 201310


Download ppt "Dual use tools: requirements and design David Adams BNL November 20, 2013 ASG tools working group."

Similar presentations


Ads by Google