next up previous contents
Next: Contrasts between USA Up:

Characteristics of HPC Previous: Government Intervention Scenarios


Long Term Viability for HPC Applications

The long term success of HPC software projects like those under PAP and EUROPORT depends upon how HPC utilisation effort will be sustained in the future and in particular on the maintainance schedule for the HPC application codes that resulted from the projects. Two main factors affecting this will be: which organizations decide to adopt and maintain the parallel applications codes; and either the continued stability or an organized development of the underlying HPC systems level software such as message passing systems, libraries or parallel languages that have been used to develop parallel applications.

In the case of EPCC projects under the PAP scheme, an early decision was made to allow the copyright of the HPC applications to remain with the industrial development partner who originally owned the serial application code. This was felt the best way to encourage these industrial partners to maintain the parallel applications codes. Other projects have split copyright amongst members of a consortia, which may provide less motivation for individual consortia members to pursue maintainance of HPC applications codes beyond the timescales of the original funded project, unless some motivating means keeps consortia members together. It is too early to forecast how successful most of the PAP or EUROPORT projects in the `long' timescales of 5 years hence. However, we stress that independent software vendors will only continue to maintain the `pulse funded' parallel codes if there is a viable enterprise model for this. In many cases it might be that slow user uptake and continued volatility in HPCC systems will lead to abandonment of parallel versions. It is critical that this issue be monitored and suitable resources be made available to tide these projects over until a sustaining enterprise model can be maintained without government intervention.

At the time of writing the underlying HPC systems level software such as the definitions for message passing or data parallel programming languages is still in a state of flux. There has been a degree of paradigm convergence over the last 3 years and it is now realistic to expect HPC software codes written with message passing calls for example to be maintainable to the same industrial standards as vector codes currently are. Similarly, the widespread acceptance of Fortran 90 and the continued (albeit gradual) uptake of HPF suggests that data parallel programs will be maintainable to similar levels soon. This is in clear contrast to the situation at the start of the decade when experience was that many industrial development partners viewed parallel applications as purely research projects with no prospect of maintaining the resulting applications codes.

On a technical level, it is not clear how new developments in parallel languages and libraries for example will be embraced and incorporated into what will become the `HPC applications legacy codes' of the future. It is important that some degree of stability in HPC systems level interfaces (like MPI or HPF) be perceived so that industry has the confidence to maintain applications codes that use them. From this perspective it is probably better to develop MPI-2 or HPF-2 which have well defined mupgrade migration routes and a large degree of backward compatibility, rather than to keep introducing completely new packages with no degree of compatibility. This phenomena is demonstrated by the continued lifecycle of the Fortran series of languages and to a less extent more recently the C series of languages. This contrasts with the practically non-existant industrial uptake of completely new programming languages.

It is fairly certain that the backwards compatibility provided by Intel series of processors for the PC was instrumental in ensuring a stable and broad base of software developed for PCs. This backward compatibility, although unfortunately anathema to the research world, will be necessary for the future prosperity of HPC software and by implication HPC as a whole.



next up previous contents
Next: Contrasts between USA Up:

Characteristics of HPC Previous: Government Intervention Scenarios




Geoffrey Fox, Northeast Parallel Architectures Center at Syracuse University, gcf@npac.syr.edu