Definition of Support

The following sections describe what is meant in practical terms by support in the context of CMS software, and CMS physicists' workstations and PCs.

CMS Software Librarian

The coordination of support for the various platforms and software versions is the major task of the CMS Software Librarian. In practice, today, this person administers the CVS repository for CMSIM, and is able to answer or redirect detailed questions about CMSIM. As the breadth and scope of CMS software increases, the role of the Librarian will become a full time activity for a permanent member of staff at CERN.

At the time of a release of a new version of CMS software, the Librarian must ensure the coordination of the Package Coordinators and Platform Coordinators involved in providing particular OS versions, so that the release of a CMS software package is made simultaneously on all supported platforms. The Librarian has the authority to delay the release for a variety of reasons, notably if there is a missing version. The Librarian, at his or her discretion, may refuse a contribution to a release according to various quality criteria to be defined.

CMS Software Package Coordinators

The Package Coordinators are responsible for providing all the files necessary for the release (see below), and assistance before, during, and after the release with questions related to the build they provided. However, all such assistance is coordinated via the Librarian, and end users will normally not be encouraged to contact the Package Coordinator, but rather to go via the Librarian. The Package Coordinators are also responsible for maintaining the formal testing suite for the package, the results from which are used to ensure the correctness and quality of the code.

CMS Hardware Platform Coordinators

The Platform Coordinators are each responsible for building and first testing of the CMS software packages on a particular hardware platform. The coordinators will be located at Institutes that support a particular platform. They are also responsible for defining the CMS environment for the platform, including scripts to set up this environment.

CMS Software Release Sequence

A release is sequenced as follows:

  1. Physicist/Programmers working on a package check in code to the DEV area of the relevant CVS repository, in consultation with the Package Coordinator.
  2. On a particular signal (e.g. once every month, or at the request of the SCB), the Librarian instructs the Package Coordinator to freeze the package's DEV area in the repository.
  3. The Librarian builds the DEV version of the package, on a convenient hardware platform (currently probably one of HP/UX or Sun/Solaris), and applies the quality checks and standard tests that come with the package. Code that fails the quality and verification tests is not accepted, and the Package Coordinator informed accordingly (who in turn informs the culprit Physicist/Programmer).
  4. The results from the tests being satisfactory, the Librarian instructs the Platform Coordinators to build the package on all the supported platforms.
  5. The Platform Coordinators build the package, and apply the quality tests. Any problems found are reported back to the Librarian.
  6. The Librarian collects any problem reports, categorizes and prioritizes them, and passes them back to the Package Coordinator. If there are no problem reports, then the Librarian announces a new version of the package exists, and the repository is managed accordingly (as described in "CMS Software Release Structure" below). The release sequence then ends.
  7. The Package Coordinator liaises with the Physicist/Programmers to resolve any problems with the software, checking in any required changes to the "frozen" DEV area in the repository.
  8. The Package Coordinator informs the Librarian when the problems are resolved, and the sequence begins again at point 3.

CMS Software Release Structure

The release structure is defined in terms of the familiar OLD/PRO/DEV levels. These are described as follows:

Hardware

Hardware support is not covered in depth in this document. Existing support structures in the Institutes, and at CERN, should be benefitted from for advice and help on:

In particular, in the case of CERN, CMS users bringing workstations or PCs onto the CERN site are referred to the CN/DCI Group Web page that describes system software and hardware support for UNIX workstations at CERN, and the PC Shop page that describes supported PC configurations.

(Note that, both CMS and ATLAS are in the process of defining acceptable PC hardware configurations that will be proposed for support to the responsible group in CN Division.)

The preferred platforms are currently Sun and HP workstations. This means that users bringing these types of machine onto the CERN site to use in CMS can expect additional assistance than otherwise.

Current CMS Software

CMSIM and CMSCAN

CMSIM and CMSCAN are the only fully supported software packages. CMSIM consists of CMKIN, CMRAW, CMTRG, CMRHT, and CMREC. We define fully supported as the availability via ftp or from the CMSIM Distribution Web page, in a timely fashion, of:

CMSIM is thus currently supported on the following Operating Systems:

CMSIM is explicity not currently supported on OpenVMS, OS2, VM or Linux.

CMSJET

CMSJET is widely used in CMS. However, no formal support is offered for this program, and interested users are thus invited to contact the CERN Group for further information.

Removal of Package/Platform Support

The list of CMS supported platforms and packages will be reviewed once per year by the SCB. Support for either a package or a platform may be withdrawn, based on criteria to be decided by the SCB, no earlier than six months from the time of the relevant decision in the SCB.

Future CMS Software

This category includes the OO Reconstruction and Analysis programs being developed and the OO program development support tools used by CMS. None of this software is currently formally supported by CMS. Interested users are invited to contact the CMS Software group at CERN for further information.