A.M. Osborne CN/ASD
This article concerns the activities of the HEP programming part of the ASD group in CN. The infrastructure database component largely retains the activities described in a previous article (CNL 218).
The major components and themes of the group's activities have been centered on Data Analysis (PAW, Ntuples), Data Management (FATMEN, HEPDB), Simulation (GEANT3), Investigation of Parallel Architectures (GPMIMD-2 project) and of course CERNLIB. It should be stressed from the outset that a very large fraction of these activities has heavily relied on the active and important participation of many members of the HEP community, both at CERN and outside laboratories and institutions. Given that the group has only 12 full-time staff programmers, this collaborative working style will have to continue over the years if the necessary software is to be in place for the LHC startup. While we will often refer to the needs of the LHC experiments, it goes without saying that we intend to support the requirements of newer experiments such as NA48. The NA45 experiment has decided to move to the C++/object-oriented world in a much shorter time-frame than the LHC and much can thus be learnt in a physics production environment over the next few years.
The current software, known collectively as CERNLIB and which is largely FORTRAN and C based, is now basically put into maintenance mode. CERNLIB 96A, whose major new features were a new query processor for PAW, an event level-parallel GEANT3 (a fruit of the collaboration with the GPMIMD-2 project) and a code base now installed and maintained via CVS (Concurrent Versions System), will be the last FORTRAN release of the program library to contain major new features. In general, we expect to have future releases at a maximum rate of one per year, although this will principally be concerned with operating system changes and bug fixes. After extensive discussions with the current CERN experiments, we believe that this overall strategy is accepted in the user community. As announced in CNL 221, the major group effort for the current CERNLIB will, this year, be on providing a fully supported Windows/NT version. We intend to make a general clean-up of the library for NT (only) and not provide there tools or packages that are obsolete.
CERN overall expects to shed approximately a quarter of its current manpower by the time of the LHC startup. We cannot expect to be immune from this attrition; indeed we have `lost' 2.5 full-time staff equivalents over the past year - through retirement and transfers to other divisions and the provision of manpower for coordination of CN activities with the LHC experiments. In order to cope with this and further diminution of the group's programming strength, and still be able to pursue the main themes of data analysis, data management, simulation and the evolution of CERNLIB, all of which are accepted as necessary for the LHC experiments, we are basing our future strategy on the following elements:
The group is now heavily engaged, together with the LHC experiments and other physicists worldwide, on providing components of the LHC era software environment based on object-oriented technology with C++ as the implementation language. The four main areas that we are pursuing, each of which relies on existing expertise within the group, are:
The RD45 project, approved in February 1995, is investigating solutions to the problem of object persistence (frequently referred to as the "I/O" problem), for LHC-era HEP experiments. Strong emphasis has been placed on understanding whether standard, commercial solutions can be used as components in the eventual solution. The initial goals were to produce a requirements specification for the management of persistent objects typical of HEP data together with criteria for evaluating potential implementations, to perform an evaluation of the suitability of ODMG's Object Definition Language for specifying an object model describing HEP event data and, starting from such a model, develop a prototype using commercial ODBMSes and evaluate its functionality and performance.
The project has made two status reports to the LCRB - an interim status report in November 1995, and a full report in February of this year. At the time of the interim report, a rider was added to the requirements specification milestone: to produce a `Statement of Probable Capabilities' for a HEP persistent object management system based on commercial ODBMSes and large-market mass storage systems.
A document that addresses this milestone, as well as the status report produced for the February LCRB review, can be found via the RD45 Web page, accessible via the URL:
RD45 was recently approved for a second year, with the following milestones and comments:
The project has made excellent progress in identifying and applying solutions for object persistence for HEP based on standards and commercial products. The milestones set (as reviewed by the LCRB in November 1995) have been met.
The LCRB agrees with the programme of future work outlined in the RD45 report, and has identified several activities as particularly important. The LCRB recommends continuation of RD45 for a future year with the following milestones:
RD44 (GEANT4) is a world-wide collaboration of scientists aiming to re-design a major piece of CERN software within an object-oriented environment. The result of this development is continuously compared with the functionality of the current version of GEANT (3.21). This project is fundamentally testing the suitability of the object-oriented approach for simulation in HEP, where performance, flexibility and functionality are crucial issues. RD44 contributes to the production of a general framework for the LHC off-line software to complement other R&D projects more focused on reconstruction (MOOSE) and object persistency (RD45).
RD44 was approved in November 1994 for one year. During the first year the number of collaborators has doubled (to about 70) and many of the HEP laboratories and experiments in the world are participating in the project. In such a large, geographically dispersed collaboration, communication is an important issue. Frequent travel and video-conferences have helped to establish the needed communication channel.
The milestones set for 1995 were to produce a global object-oriented analysis and design of an improved GEANT simulation toolkit for HEP and develop in C++ a prototype of the geometry and tracking kernel, for geantinos and muons, and evaluate its performance.
User requirements have been collected and published according to the ESA PSS-05 standard. Three deliverables have been produced; the User Requirements document, the System charter statement and System function statement. The problem domain has been analysed, leading to the determination of the sub-domains listed below. Corresponding working groups have been set up according to the expertise and areas of interest of the collaborators. Finally, class categories and their dependencies have been identified, though a stable version of the corresponding deliverable was produced only after several design iterations.
The conclusions of the review at the end of 1995 were that RD44 had
successfully decomposed the task into sub-domains making effective use
of the skills of the collaborators, that there was an
efficient intercontinental collaboration which had attracted new
collaborators with complementary skills and interests, and that there
was a convincing indication that GEANT4 will be faster than GEANT3.
The project has been re-approved
for a second year, with the milestone of delivering a first working
version for selected users by early 1997. The main activities required
by the LHCC for next year are:
In order to reflect better the activities of the group, the organisational structure is now: