Cosmic Slice Release Validation


We describe here the procedure we are following in order to test the Cosmic Slice in each dev release. There are some basic points which have to be examined to make sure that the Cosmic Slice behaves good and as expected when a new release is built. Our procedures focus on (further details can be found on the appropriate section):

  • Checking the streaming.
  • Checking the signature acceptance.
  • Debugging (if the Cosmic Slice fails to run).

The way of checking these is by running athenaMT/PT and a partition (localhost or in the preseries) on a datasample, comparing those results between each other, and then comparing them with the ones from the previous release.

All the scripts in bold mentioned below are available at /afs/

How to run athenaMT, athenaPT from JobOptions

In order to run athenaMT from JobOptions, one should do: -l DEBUG -f /scratch/lxaplant/ -c "testCosmicV1=True"
--oh-monitoring -o MT_JO_CosmicSlice >& MT_JO_CosmicSlice.log &

Then to run athenaPT: -l DEBUG -f -c "testCosmicV1=True" 
--oh-monitoring -o PT_JO_CosmicSlice >& PT_JO_CosmicSlice.log &

In order to run only the cosmic slice the has to be modified (looks like the testCosmicSlice=True in the command line doesn't work...) in this way:





The log files (one can increase the verbosity by changing the "-l" option to VERBOSE) together with the Histograms from the two runs, are carefully examined with the help of some scripts as described below.

How to run athenaMT, athenaPT from Database

To run athenaMT from the TRIGGER database, one should do: -l DEBUG -R 92082 --oh-monitoring -f /scratch/lxaplant/ -o MT_out_TRIGGERDB -J TrigConf::HLTJobOptionsSvc 
--use-database "DBServer=TRIGGERDB:Instance=L2:DBSMKey=387:DBHLTPSKey=419:DBLVL1PSKey=2" >& MT_out_TRIGGERDB -J TrigConf::HLTJobOptionsSvc.log
To run athenaMT from a private database: -l DEBUG -R 92082 --oh-monitoring -f /scratch/lxaplant/ -o MT_out_DB -J TrigConf::HLTJobOptionsSvc 
--use-database "DBType=Oracle:DBServer=DEVDB10:DBUser=xxxxxxxx:DBPasswd=xxxxxxx:Instance=L2:DBName=xxxxx:DBSMKey=15:DBHLTPSKey=5:DBLVL1PSKey=2"  >& MT_out_DB.log

Then for running athenaPT (change the database info to use a different database if necessary: -l DEBUG -R 92082 --oh-monitoring -f -o PT_out_TRIGGERDB -J TrigConf::HLTJobOptionsSvc 
--use-database "DBServer=TRIGGERDB:Instance=EF:DBSMKey=387:DBHLTPSKey=419:DBLVL1PSKey=2" >& PT_out_TRIGGERDB.log

How to run a partition (from JobOptions or from Database)

The procedure to create and run a partition (localhost or multihost) is described in HLTPartitionTesting

How to check the Streaming

Once the runnning of athenaPT (or partition) is done the streaming can be checked by using the script on the output datafile(s), e.g.

./ < ... > TTtable.out

The output of this script is some info concerning the HLT acceptance of each event and at the end 3 tables:

  • The first table prints the TriggerTypeBit (0-7) vs CTPID
  • The second table prints the TriggerTypeBit (0-7) vs the StreamTag
  • The third table prints the TriggerTypeBit (0-7) vs the FileName

Once these tables are created (e.g. for AtlasP1HLT- and AtlasP1HLT- one can check if there are any differences in the streaming. This procedure can also be done from the histograms of SignatureAcceptance_RunSummary from L2 and EF and the StreamCorrelation ( availabe at EF histograms when running athenaPT or at PT and SFO histograms when running a partition).


Since the 8th TriggerTypeBit is used to define the run (physics,calibration,cosmics,etc.) it basically sums up the events ending up in the corresponding StreamTag (in the 2nd table).

How to check the Signature Acceptance

Using the log files when athenaMT has finished running, and the output datafile(s) when athenaPT (or the partition) has finished running, one can create a list of events accepted in one case and not in the other (e.g. when comparing rel. and To do so the following scripts are needed:


The script (which uses the gets as input 7 arguments, where the 1st and 2nd LogFileIdentifier is chosen from the user to help him identify each LogFile (for instance if one is comparing release with release, the 1stLogFileIdentifier could be 14 and the 2nd 15) and creates 3 output files (NameNumDict_1stLogFileIdentifier, NameNumDict_2ndLogFileIdentifier and CTPIDNameNumDict):

./ {1stLogFileIdentifier} {1stLogFilePath} {2ndLogFileIdentifier} {2ndLogFilePath} {LVL1MenuXMLFilePath} {1stRunOutputDataFile} {2ndRunOutputDataFile}

The output of this script is a list of chains where events are accepted in one case and not in the other, as well as the list of active L1 items per chain.

If one wants to extract one or more events from a datafile (so one can run only on this (these) event(s) to check the problem) the script can be used, e.g. for extracting events 1862281129 and 1862281234 from

./ 1862281129 1862281234

Current release status

  • AtlasP1HLT-
    • Check out

Useful Links

-- Major Updates:
LeonidasXaplanteris - 06 Apr 2009

Responsible: LeonidasXaplanteris, WojciechFedorko
LeonidasXaplanteris, Wojciech Fedorko

Edit | Attach | Watch | Print version | History: r16 < r15 < r14 < r13 < r12 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r16 - 2011-06-20 - LeonidasXaplanteris
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback