Compiler Support for Message Passing Systems
Small Business Information
Scientific Computing Associate
One Century Tower, 265 Church, Street, New Haven, CT, 65107
AbstractThis project addresses the important area of programming support for high performance parallel computing. At present, message-passing systems like PVM or MPI are the most widely used software systems for parallel computing, both for defense applications and for applications in the commercial and industrial sectors. Message passing is conceptually quite straightforward and should be relatively easy to apply. Unfortunately, however, the fact that today's message-passing systems are based entirely on the use of subprogram libraries, rather than on language-level constructs, makes them much harder to use than they should be, particularly when handling heterogeneous or unstructured data and computing environments. In this work we will develop suitable precompiler technology to handle many details of message-passing systems automatically, while still preserving the ability of sophisticated users to control the low-level details when that is required. We proposed to investigate language-level front-end systems that will interface with widely-used message-passing products like PVM or MPI to reduce the burden on users by providing, among other things: much cleaner and more intuitive syntax; semantic support for compile-time or link-time error checking; and automatic handling of many general situations at run time. ANTICIPATED BENERFITS: This project will lead to tremendously increased use of message-passing systems by making them much easier to use. By eliminating many programming complexities, compiler-level enhancements allow quicker development of programs that are more correct and run faster. Products based on this work will enable commercial and industrial firms to gain far greater benefit from parrallel computing, and to do so faster, with less-specially-trained personnel, and at far lower cost than with current library-based message-passing systems.
* information listed above is at the time of submission.