CERN Accelerating science

This website is no longer maintained. Its content may be obsolete. Please visit http://home.cern/ for current CERN information.



next up previous
Next: Changes in the Up: Application Software & Previous: CERNLIB Support for

Programming Language Issues for CERNLIB

CERN Program Library Office CN/ASD

Introduction

Fortran has been the mainstay of the CERN Program Library ever since its creation. Recently, however, there have been a number of significant changes which have caused us to revise our plans. Our current strategy can be summarised as follows:

Further details are given below.

Libraries for HEP Computing (LHC++ Working Group)

A working group has recently been established to understand how the current CERNLIB might ``evolve'' into something suitable for LHC-era experiments. This group contains members from CN and ECP divisions at CERN, experiments based both at CERN and outside, and from the major HEP laboratories around the world. The mandate of the group, its members, and a summary of activities both past and future are now available on the web via the following URL:

http://wwwinfo.cern.ch/pl/lhc++.html

As the name of the working group suggests, the primary focus is on the needs of LHC experiments, and on C++ based solutions. The group intends to build on existing work, such as the CLHEP class library and the major contributors to the development of CLHEP are members of the working group.

Fortran 90

The HEP community has been involved in the Fortran standardisation process for many years. As is well-known, Mike Metcalf (CERN) and Len Moss (SLAC), played key roles in the development of the current international standard -- Fortran 90.

A natural sequitur of such activity would clearly be the deployment of Fortran 90 within HEP, and a conversion of the Fortran component of the CERN Program Library to Fortran 90, in an analagous fashion to the move to Fortran 77 some 15 years ago -- the Fortran 66 version of CERNLIB was frozen, and the Fortran 77 version introduced.

It should be emphasised that by a Fortran 90 version of CERNLIB we mean one that exploits Fortran 90 features, and not simply a version that will compile with a Fortran 90 compiler -- which is true of the current library. gif

The move to a Fortran 90 version of CERNLIB has been part of our plans for many years now, and progress on compiling and using the CERN Program Library with Fortran 90 compilers plus news on the language itself have often been reported in these pages.

Unfortunately, the wide-spread availability of Fortran 90 compilers has been slower than was previously predicted, and we are still not in a situation where a Fortran 90 compiler is offered on all central systems at CERN. With the help of representatives from a number of collaborations, both those currently taking data and future experiments, we have produced a revised plan for the use of Fortran 90 for the CERN Program Library, which is as follows:

The decision not to produce a Fortran 90 version of CERNLIB for the current experiments was strongly influenced by feedback from the collaborations themselves, who were virtually unanimous on this point.

Should the computing strategies for the LHC collaborations indicate a role for Fortran 90, it would make sense to start the LHC era with a cleaned-up version of the current library, which exploited language features to replace many of our existing `extensions'. It is, of course, far too early to decide exactly what such a library might look like, but we will be considering this over the coming years. However, it is fair to state that simply carrying the existing Fortran 77 code unchanged through into the next millenium is probably one of the least likely scenarios.

Finally, work in the Fortran standards bodies is now turning to the revision planned for around the year 2000. It is highly unlikely that native, optimising Fortran 2000 compilers would be available sufficiently early to be relevant for LHC, and hence it is considered inappropriate to continuing investing work in this area.

These plans were produced in conjunction with representatives from a number of experiments, whose help is gratefully acknowledged.



next up previous
Next: Changes in the Up: Application Software & Previous: CERNLIB Support for



Michel Goossens
CN Division
Tel. 3363
Tue Nov 28 18:14:41 MET 1995