Machine type: Shared-memory multi-vectorprocessor.
Models: 440(VF), 480(VF), 500(VF), 580(VF), 620(VF), 720(VF), 820(VF), 900(VF).
Operating system: MVS/ESA, VM/ESA, VSE/ESA, AIX/370 (IBMs Unix variant for large systems).
Compilers: Fortran, C , Pascal, ADA.
As it has become virtually impossible to discuss all models and their variants, we only present a (reasonable representative) subset of the complete spectrum of machines.
All the peak performance numbers quoted above are for the maximal configured systems, i.e., all processors are equiped with a Vector Facility (VF). VFs may be installed or left out as required by the user. Enhancing the normal processor with a VF was an idea that already was implemented in the ES/9000's predecessor, the IBM 3090. There are however some refinements with respect to the 3090: Instead of a cache that has to be shared among processors, each processor has now its own cache of 4MB. In addition, the memory hierarchy has increased by another layer by adding separate High Speed Buffers of 128 Kbytes each for data and instructions. This should combat the problems that sometimes were experienced in the 3090 systems with data starvation of the functional units. As in the 3090 systems, in the ES/9000 systems the relative data bandwidth is rather low: 8 bytes/cycle, i.e., one 64-bit operand or result can be loaded or stored per cycle.
An interesting enhancement for the high-end 820 and 900 models is that their VFs are able to produce 4 results per cycle which, for suitable code, should lead to a very respectable 563 Mflop/s per processor.
Only Fortran can be used for parallel processing. Parallel processing is accomplished by (a)symmetric processing with proces synchronisation via memory. There are no special hardware provisions like communication registers which makes synchronisation rather costly. The system is aware of which processors have a VF and which have not and acts accordingly without any required action of the user.