Jump Over Left Menu
Issue 8: September 1997
- The Importance of Standards
- The Graphical Kernel System
- Standard for Exchange of Product Model Data
- Virtual Reality Markup Language
- New W3 Group in DCI
- Atlas Users Meeting
NOTE: many of the urls referenced in this newsletter are no longer active.
The Importance of Standards
This issue of ATLAS includes a number of articles on International Standards developed with DCI involvement. As an introduction, this article discusses the informal activities surrounding the early stages of development of Standards.
When a car bumps into another in a traffic jam it is important that the bumpers on the two cars are at the same height, so they collide with each other and absorb the impact rather than missing each other so one car's bumper collides with the other's headlights. For many years this actually happened until car manufacturers agreed a standard height.
In computing there are similar reasons for standards at both research and development levels. Ultimately, standards are agreed by a formal body. Many informal activities take place, both before international standards are proposed and after they are agreed within the formal process, to establish common terminology and reference models, or to develop demonstrator implementations. When researching novel ideas, applications often have to be built which include many layers of a process pipeline beyond the one that an individual researcher needs. Without such applications the researcher's component cannot be tested and evaluated in a complete system. It is tedious however, to develop complete applications repeatedly to test a technology as it develops. Equally, researchers do not want to use an old application which now has some of its components refined, with others being completely archaic. It is necessary for researchers of each component to collaborate to agree an overall reference model for the process, which places each component in relation to the others and defines the interfaces between them. Firstly, this allows researchers to use a common language to discuss the area, thereby improving communication and accelerating research development. Secondly, it allows them to test their latest components in applications including at least recent versions of other components, since they all fit together.
In order for such reference models to be developed, the consensus of leading researchers in the field should be obtained by open discussion of the proposals through to agreement of the final standard reference model.
Such developments and reference models are not part of the formal standardisation process, but arise before it starts in order to further a field of research, or after it has taken place to interpret and polish standards. Without these stages before and after the formal standards agreement process, the standards would not come about.
Michael Wilson, DCI, CLRC
The Graphical Kernel System
The Graphical Kernel System (GKS), is the first International Standards Organisation (ISO) standard for computer graphics programming, and was published in 1985. Under ISO rules, international standards have to be reviewed no later than 5 years after their date of publication, in order to determine whether they need modification or have become obsolete and should be withdrawn. In the case of GKS the ink was barely dry on the paper when the first thoughts of review were entertained at a workshop held in Disley, near Stockport in 1987.
The review process started in earnest around 1989 and a revised standard, known as GKS-94 was published in 1994.
GKS-85 provided facilities for the generation of 2D graphical output and acceptance of input from a wide range of different physical input devices. The major design work was done at a time when storage tubes, vector refresh displays, microfilm recorders and pen plotters were in widespread use and the main types of input device were light pens, thumb wheels, potentiometers and keyboards. Raster displays and mice were the province of the rich! By 1990 the desktop workstation environment with window manager, mouse and keyboard and raster display had become commonplace. Four key areas for improvement were identified:
- More formality in the specification in the light of experience
- improved portability of applications between different platforms and environments by reducing implementation and workstation dependencies
- more primitives and enhanced control to meet modern requirements and to expand the user base
- easier interface with the Computer Graphics Metafile standard for transmission and storage of graphics.
Addressing these areas resulted in some quite substantial changes between GKS-85 and GKS-94. The consequence of this, and the need to maintain a form of upward compatibility between the two, resulted in a lengthy process of establishing agreement on the technical content of the new standard.
A major change was made to the GKS architecture to introduce the concept of a central scene (which can be thought of as a drawing board) where the graphics are constructed. Parts of this scene may be selected for display on a particular display device, using a very flexible naming and filtering mechanism. A powerful picture part mechanism is also provided to enable parts of pictures to be stored and reused. The types of output primitives supported were extended with conic sections and NURBS (nonuniform rational B-splines) and support was given to enable GKS-94 to be used gracefully in a windows environments.
European users and developers made major inputs and contributions to the development of GKS-94 with DCI staff acting as the ISO document editors. The development process took a long time, but resulted in a carefully packaged, rich and flexible functionality for the application developer to use.
David Duce, DCI, CLRC
Standard for Exchange of Product Model Data
Standard for Exchange of Product Model Data (STEP) is a major international effort: with the aim of standardising methods for the exchange and management of engineering data. The standard is formatted in a three layer structure; the top layer, or application layer, contains the data models for specific engineering domains; the middle layer contains the shared resource data models; the bottom layer contains the implementation of these models.
Express is the language used in STEP for defining data models. It is based on the concepts of entities and attributes of entities. An example is given in Figure 1.
An exchange file format has been defined for use in STEP which is closely linked to the Express language. This defines for each possible Express construct, a mapping into the exchange file format. Care has been taken to use ASCII characters only in the STEP file specification, thus ensuring that the file can be transferred over a network, and can be exchanged between different operating systems. Figure 2 shows an example of a segment of an exchange file.
The STEP Data Access Interface (SDAI) may be thought of as the 'Application Programming Interface', for a 'virtual database'. The data in an arbitrary database is assumed to be described by an Express model. The advantage of using a standardised interface is that the application using the SDAI does not need to know the internal form of the database, not even the basic access methods or technology of the database. As an example, the SDAI standard contains descriptions of subroutine calls for:
- Creating an entity instance of a given type
- storing an attribute value
- finding all instances of a given type in the data repository.
DCI at RAL are active in a number of implementation technologies, for instance we have developed a file writer, and also an SDAI implementation. Both are available in the public domain. We are also contributing to the specification of Engineering Analysis models.
By now a number of STEP parts have been accepted as an official International Standard. Some representative examples are: Part 11 Express language, Part 21 Exchange File format, Part 46 Visual presentation, Part 104 Finite Element Analysis.
There are STEP parts currently in development for areas such as ship building, process plant design, and parts libraries. Also the formal testing of implementations is being standardised.
Jan Van Maanen, DCI, CLRC
Jan Van Maanen was chairman of the working group that delivered the SDAI Standard to ISO.
Virtual Reality Markup Language
Virtual Reality Markup Language (VRML) will be the major method for displaying 3D information on the WWW. In consequence, it is seen as a major tool for use within CLRC.
In the Beginning
On St Valentine's Day in 1994, Mark Pesce and Tony Parisi clicked on a link in a Mosaic browser page and successfully downloaded a text file across the WWW which defined a banana and displayed it locally in 3D. This program (helper?) was called Labyrinth and was the starting point for VRML for displaying 3D information on the WWW at a level of abstraction similar to HTML.
Several candidates for the base definition were examined but Silicon Graphics Open Inventor was eventually chosen as the basis for VRML 1.0. Template Graphics built a platform independent WWW browser for VRML 1.0 and it was officially launched in April 1995. Fifty WWW sites with VRML images appeared in the first week after the announcement! Within a short space of time it had become possible to define, assign properties to, and manipulate 3D objects of some complexity.
The VRML Architecture Group (VAG)
VRML 1.0 was seen as the start of a fully interactive 3D environment. An open forum was established for the discussion, design and implementation of a platform-independent language for virtual reality and shared virtual worlds. The VAG was inaugurated in August 1995 and worked hard at defining a language that would satisfy these objectives. At a meeting in 1996, VAG proposed a formal process for the selection of a VRML 2.0 specification. As a result the "Moving Worlds" proposal from Silicon Graphics in conjunction with Sony and Mitra became the working document for VRML 2.0 from which the final specification was produced. A new body, the VRML Consortium, took over all responsibilities from VAG later that year.
At the time VRML 2.0 was being evolved, ISO had started work on a 3D Metafile standard to go with Computer Graphics Metafile (CGM), the existing 2D Metafile standard. Many of the people involved in the ISO activity saw little point in proposing a rival to VRML and so the VRML 2.0 proposal was put forward as a potential ISO standard. ISO agreed and with VAG's help drafted the modifications required to produce the text of the Draft International Standard. This revised VRML specification has now been finalised and will be published electronically as an HTML document as well as in paper form. This will mark the first time that an ISO standard has been published electronically. It has taken three years from the Pesce banana to the final text for an ISO 3D Metafile Standard but the ISO standardisation process will have been completed in under a year.
Bob Hopgood, DCI, CLRC
New W3 Group in DCI
The European Commission has just awarded a contract to INRIA and CLRC's DCI, which is a leveraging action to improve the take-up of the World-Wide Web Consortium's (W3C) standards and reference ;odes within European industry. The contract is for 3 MECU over 18 months. Our ERCIM partners will work with CLRC as sub-contractors.
A new Group has been set up to concentrate on that activity and consists of staff with expertise in formal software engineering who have already been involved in work on the WWW, including a layered WWW server for Windows NT, work on SGML and XML, WWW form-based interfaces to STEP catalogues, and active research into Java and distributed object technology.
The mission of the new Group, to be led by Stuart Robinson, is to become a world-class centre of excellence in WWW and distributed object technology through (a) foundational research, (b) application of the appropriate new technologies to real-world problems, and (c) participation in the formation of policy and standards at all levels.
The Group's initial portfolio of projects will include W3C-LA, AQUARELLE, the CLRC external web, the DCI external web, the CLRC commercial web and a number of short-term web design and development projects. In addition the Group will participate in W3C activities as opportunities arise.
Brian Davies, DCI, CLRC
Atlas Users Meeting
The Atlas User Meeting for users of the Cray J90 and DEC 8400 supercomputing services at CLRC, Rutherford Appleton Laboratory held on 24 April 1997, was an opportunity to talk about options and expectations for the future. After running through the service availability statistics for both machines, Roger Evans described the recent enhancements to the J90 and possibilities for enhancements to the DEC 8400.
Cray Memory Upgrade
The J90 had just been upgraded from 4 GByte to 8 GByte of main memory which was important in allowing the users to have an increase in job size, reducing turnaround times for large memory jobs and preventing the J90 from having to swap jobs to disk (swapping is bad news on J90s because of their limited IO performance relative to large memory sizes). Users agreed that increasing the maximum memory for large jobs by a factor of 1.5 rather than 2 would be a good initial setting.
Cray IO Upgrade
A sixth IO system for the J90 was expected to be delivered in May 1997 and would be used to enhance the IO bandwidth and the maximum amount of disk storage that could be attached to the J90. The intention was to add third party SCSI disks because of their excellent price/performance and expand the intermediate level of storage known as "/work".
Possible DEC 8400 Upgrades
The six processor DEC 8400 (Columbus) had now become full since the Computational Chemistry Working Party had become active. The 2 GByte memory on Columbus was very stretched and an upgrade to 4 GByte using third party memory was an attractive offer. Additional disk space to satisfy the need for temporary work space was also pressing and if the CCWP was to expand its usage then some additional cpu power was also required. The users agreed the pressing need for memory and disk space and felt that the case for increased processing power would be made later.
John Gordon spoke about recent software changes including Cray's version control software called "Modules", described recent changes to the suite of application packages and went into more detail on the use of batch queues for parallel jobs. Parallel jobs can be developed under Cray's proprietary autotasking directives, or with the message passing libraries PVM and MPI which are both optimised for use on underlying shared memory machines. The locally written program called "gded" allows users to have a quasi dedicated environment of 4, 8 or 16 processors to run their parallel jobs. Users were encouraged to use these queues and there is a discounted job charge for parallel jobs.
John also reminded users of the great importance of specifying realistic limits on job requests since the batch control software reserves the maximum memory for the queue name by default. At times this had been very wasteful of machine resources.
World Wide Web
Manjit Boparai described the unified WWW interface to all the documentation, resource control and performance monitoring tools surrounding the Cray and DEC machines. The WWW is now the primary source of documentation for both machines, old plain text documentation is available via PERL scripts, real time machine statistics are displayed graphically and Cray's own documentation now has a WWW interface using the "Dynaweb" tool. (The weblets can be found under http://unichem.cc.rl.ac.uk/j90 and http://unichem.cc.rl.ac.uk/columbus as well as from the CLRC main pages)
UK Computational Chemistry Working Party (CCWP)
Professor Mike Robb gave a talk about the setting up of the CCWP, its raison d'etre as a central source of application software, support skills and computing power and its use of the DEC 8400 at RAL. The CCWP represented about 30 different chemistry groups in the UK and had a grant award of 20,000 hours of cpu time on Columbus. The CCWP had implemented a diverse suite of chemistry applications and provided specialist support through its software expert Dr Julie Altmann.
The main topic for discussion was the range of options open for interim enhancement of the facilities at RAL pending the completion of the HPC97 project. The users expressed a need for substantially more powerful single CPU performance than was achieved on the J90 and felt that better value for money was probably achieved by an expansion of the superscalar facilities. This was consistent with the pressure on resources on Columbus while the J90 remained less than full (mainly due to under-use by EPSRC while NERC and PPARC were slightly over their 'share'). It was agreed that CLRC would negotiate with EPSRC for this enhancement.
The next meeting will be at the Royal Institution on 22 October 1997.