L1 Trigger Offline Software: requirements for submitting new L1 Trigger tags to integration builds

Goal of this page

This wiki page documents the procedure to be followed by the L1 trigger software developers when requesting the integration of new tags in the integration builds and release.

This page, as well as the linked pages, are under active restructuring.

Introduction

Before developing any CMSSW code for L1 trigger, any developer must read the CMSSW Developer's Guide in detail.

Requirements for submitting new L1 Trigger tags to integration builds

First, follow the procedure outlined in CMSSW Developer's Guide to develop the code. After the development is ready and tested, tag your package (CVS tag) and publish it in CMS Tag Collector according to the following publication recipe.

The integration in IBs or release by the release coordinator is done only at the request of the L1 trigger offline coordinator(s), so package administrators must ask the L1 trigger offline coordinator(s) explicitly for integration. Direct requests from package administrators are ignored by the release coordinator. The list of L2 offline coordinators for CMSSW packages is maintained in the Association Packages-L2s.

Tag must be published before asking the L1 trigger offline coordinator to ask for integration. If the administrator of the package is not available, please contact the L1 offline software coordinators, they have the right to publish any L1 trigger package.

For every new tag, published in TC, the administrator of the package sends to the L1 trigger offline software coordinator(s) a mail with:

  • the detailed motivation for the new tag
  • the description of the code changes (list of files changed, short explanation of the changes). No diffs between the tags is needed, this can be obtained by every developer.
  • the relevant plots / numbers showing the situation before the code changes.
  • the exact recipe to reproduce these plots / numbers
  • the same plots after the code changes, proving that the bug is fixed or the improvement performed. If the bugs/improvements are revealed/visible in another subsystem, the involved subsystems must work together to produce the plots.
  • the recipe to produce these plots, if not identical with the previous recipe - if identical, it must be mentioned
  • the validation plots for the subsystem - every system must have a standard set of validation plots.
  • the commands which were used to test the new tag(s) with cmsDriver on RelVal samples and on data
  • the estimated effect on other L1 subsystems depending on this subsystems

The L1 software coordinator has to be able to reproduce the plots, check that the bug fix or the expected improvement is indeed performed and that no other subsystems are negatively affected. None of the above requirements is optional! smile

The reasons for these requirements are:

  • after the data taking starts, we have to be able to quickly fix the possible (critical) bugs, to test the bugs properly and to deploy the tags online without significant data loss. For this, we should have in place a clear procedure, exercised well. We should also have the code and the tools to produce the relevant plots by independent developers. Whatever tests we will perform before deploying the software online, we can not exclude bugs revealed during data taking - and "reprocessing" the data is not an option for the L1/HLT trigger, if we fail to take them.

Review status

Reviewer/Editor and Date (copy from screen) Comments
VasileGhete - 22-Apr-2010 First wiki version

Responsible: Vasile Ghete

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2010-10-05 - VasileGhete
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    CMSPublic All webs login

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