CMSSW Documentation

repository·master·Indexed 23 days ago

https://github.com/cms-sw/cmssw

Software framework for the CMS experiment, including NanoAODTools for post-processing, tracker alignment validation via validateAlignments.py and DMRtrends, and PPS Global and Relative alignment packages for Roman Pot sensor calibration and track-based alignment.

Tokens
203.1K
Snippets
328
Records
894
Agent score
79%

What's inside CMSSW

  1. Overview of DQMServices/Demo modules

    master
    The DQMServices/Demo package provides sample modules designed to illustrate the various plugin types supported by DQM (Data Quality Monitoring). These modules are designed to interact in a dependency-driven manner, demonstrating how different DQM module types are intended to function within the CMSSW framework.
  2. Overview of the DQM Framework

    master

    The DQM (Data Quality Monitoring) Framework provides the infrastructure for detector-specific code to interact with DQM services like the DQM GUI, Tier0 processing, and Online DQM. It is designed to be data-agnostic and subsystem-agnostic, providing core services like the DQMStore and MonitorElement abstractions.

    Key components include:

    • Plugins: DQM code runs as CMSSW plugins, primarily categorized as Analyzers (for filling histograms in RECO jobs) or Harvesters (for manipulating histograms during transitions in harvesting jobs).
    • DQMStore: A singleton edm::Service that manages the lifecycle and storage of DQM data.
    • MonitorElement (ME): The primary abstraction for DQM data (mostly histograms).
  3. Overview of HeterogeneousTest/ROCmOpaque

    master
    The HeterogeneousTest/ROCmOpaque package provides a non-ROCm aware library designed to demonstrate how ROCm-based functions can be invoked from host-only, non-ROCm aware environments. It serves as a test case for build rules and integration limitations when using ROCm libraries across multiple plugins.
  4. Overview of L1Ntuples

    master
    L1Ntuples is a tool designed to build Level 1 (L1) Trigger DPG ntuples. These ntuples are used for L1T developments, performance studies, and rate estimation. The production process follows the general description used in LHC Run 1 and is documented via specific Twiki pages for L1T Stage 2 instructions.
  5. Overview of FWCore/SharedMemory interprocess communication

    master

    The FWCore/SharedMemory package provides tools for two-process communication via shared memory. The typical architecture involves a Controller process (running within cmsRun via a module) and one or more Worker processes that perform tasks on behalf of the Controller.

    Key characteristics:

    • Uses boost::interprocess for shared memory management.
    • Supports a 1-to-N relationship where one Controller module can manage multiple Workers (e.g., one Worker per Stream).
    • All classes reside in the edm::shared_memory namespace.
  6. Overview of DQM Services Components

    master
    The DQMServices/Components package provides the core 'DQM Framework' functionality. These components are independent DQM plugins designed to be data-agnostic, meaning they are not specific to any particular detector, subsystem, or data type. This framework allows detector-specific code (typically found in DQM/, DQMOffline/, or Validation/) to interface with the broader DQM infrastructure, including the DQM GUI, Tier0 processing, and Online DQM.
  7. Overview of the TruthInfo prototype

    master

    TruthInfo is an experimental prototype providing a single, navigable, physics-oriented MC-truth graph for CMS. It abstracts the complex generator and simulation truth history (HepMC, GenParticles, SimTracks, SimVertices, etc.) into a unified model.

    Warning: This is a prototype under heavy development. It targets Phase-2 (Run 4) only and its APIs/configurations change frequently. It is not intended for production use or external contributions at this stage.

  8. Overview of NanoAODTools

    master

    NanoAODTools is a Python-based toolkit designed for post-processing NanoAOD files. It enables users to:

    • Skim events based on selection criteria.
    • Add new variables to the NanoAOD trees.
    • Produce plots.
    • Perform simple analyses.

    It can be used within a CMSSW environment or as a standalone package. Note that while it is flexible, its sequential design model may result in lower performance for complex analyses compared to highly parallelized frameworks.

  9. Overview of the Global Track Trigger (GTT)

    master

    The Global Track Trigger (GTT) is a CMS subsystem located downstream of Level-1 Track Finding. Its primary purpose is to perform Level-1 vertex-finding for the L1 Correlator Layer 1 (used for PF Candidate / PUPPI reconstruction) and to globally construct track-only objects. These objects are then sent to the Global Trigger.

    Key objects produced by the GTT include:

    • Jets
    • HT (Scalar sum of transverse momentum)
    • MET (Missing Transverse Energy)
    • Mesons (specifically $\phi$ and $\rho$)
    • $W \to 3\pi$ candidates
  10. Overview of SiStripClusterSoA data format

    master
    The SiStripClusterHost/SiStripClusterDevice is a portable collection based on the SiStripClusterSoALayout (defined in DataFormats/SiStripClusterSoA/interface/SiStripClusterSoA.h). It is specifically designed to store collections of SiStrip cluster candidates produced by the heterogeneous SiStripClusterizer module (found in RecoLocalTracker/SiStripClusterizer).
  11. Overview of XrdAdaptor components

    master

    The XrdAdaptor is the CMSSW implementation of the CMS AAA infrastructure for XRootD. It provides features on top of the standard XRootD client library, specifically:

    • Error Recovery: Automatic retries for certain errors.
    • Multi-source Support: The ability to use multiple XRootD sources for a single Physical File Name (PFN).

    Key components include:

    • XrdFile: Implements edm::storage::Storage and acts as the glue between the edm::storage::Storage API and the RequestManager for a single PFN.
    • RequestManager: Manages retries and the multi-source algorithm. It contains one or more Source objects.
    • Source: Represents a connection to a specific storage server.
    • XrdStatisticsService: A default service enabled in cmsRun that centrally reports XRootD-related statistics.
    • XrdStorageMaker: A plugin in the StorageMaker hierarchy used to create XrdFile objects.