Running Art Tutorial: Difference between revisions

From Mu2eWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:


== Exercises ==
== Exercises ==
=== Exercise 1: Running a simple module (Hello, Tutorial!) ===
In this exercise, we will run a simple module that will print a welcoming message.
<ol style="list-style-type:lower-alpha">
<li>First set up to run Offline</li>
<nowiki>source setup.sh (??)
cd $TUTORIAL_BASE/RunningArt</nowiki>
<li>The executable we use to run Offline is "mu2e." Use the --help option to display all the command line options</li>
<nowiki>mu2e --help</nowiki>
<li>*.fcl files tell Offline what to do. We specify the fcl file we want to use every time we run Offline using the "-c" option. We will now run a simple job that prints a hello message using a premade fcl file.</li>
<nowiki>mu2e -c fcl/hello.fcl</nowiki>
This will write "Hello, world" and the full event id for the first 3 events.
<li>We can now explore the hello.fcl file that configured this Offline job to see how it works.</li>
<nowiki>more fcl/hello.fcl</nowiki>
  <ol style="list-style-type:lower-roman">
    <li>variable : value</li>
    <li>#include </li>
    <li>source </li>
    <li>services</li>
    <li>physics</li>
    <li>paths</li>
  </ol>
<li>You can find a lot more information about fcl in the Art workbook and users guide (https://art.fnal.gov/wp-content/uploads/2016/03/art-workbook-v0_91.pdf), start at chapter 9.</li>
</ol>
* Art workbook exercise 1: running HelloWorld and basic FHiCL  
* Art workbook exercise 1: running HelloWorld and basic FHiCL  
* Art workbook exercise 4: module configuration with FHiCL
* Art workbook exercise 4: module configuration with FHiCL

Revision as of 17:43, 31 May 2019

Tutorial Session Goal

In this Tutorial you will learn how to run the Mu2e 'art' framework executable (mu2e), both interactively and on the grid.

Session Prerequisites and Advance Preparation

Session Introduction

Art is a software framework for processing events with modular code with lots of run-time configurability. Art is controlled by scripts in a dedicated configuration language called fhicl (.fcl suffix). Art uses rootIO to store events.

This tutorial will cover how to build and run several different kinds of art jobs, and how to use the mu2e job tools to divide large projects into many separate jobs, and how to run those jobs in parallel on Fermigrid or the OSG (open science grid).

Exercises

Exercise 1: Running a simple module (Hello, Tutorial!)

In this exercise, we will run a simple module that will print a welcoming message.

  1. First set up to run Offline
  2. source setup.sh (??) cd $TUTORIAL_BASE/RunningArt
  3. The executable we use to run Offline is "mu2e." Use the --help option to display all the command line options
  4. mu2e --help
  5. *.fcl files tell Offline what to do. We specify the fcl file we want to use every time we run Offline using the "-c" option. We will now run a simple job that prints a hello message using a premade fcl file.
  6. mu2e -c fcl/hello.fcl This will write "Hello, world" and the full event id for the first 3 events.
  7. We can now explore the hello.fcl file that configured this Offline job to see how it works.
  8. more fcl/hello.fcl
    1. variable : value
    2. #include
    3. source
    4. services
    5. physics
    6. paths
  9. You can find a lot more information about fcl in the Art workbook and users guide (https://art.fnal.gov/wp-content/uploads/2016/03/art-workbook-v0_91.pdf), start at chapter 9.
  • Art workbook exercise 1: running HelloWorld and basic FHiCL
  • Art workbook exercise 4: module configuration with FHiCL
  • Run mu2e executable on (modified) JobConfig/primary/CeEndpoint.fcl, explore mu2e services and sequences
  • Explore .root and .art output
  • Run Print/fcl/count.fcl, dumpDataProducts.fcl
  • Create and run primary production job from JobConfig
  • Run mixing
  • Run reconstruction
  • Run TrkDiag
  • generate_fcl
  • mu2eprodsys --dryrun
  • Run the event Display

Reference Materials

  • art workbook
  • various DocDBs that reference production, satellite release, partial checkout, etc.