Matching user requirements in parallel programming
While productive use of parallel systems for business applications is quickly growing, their usage for scientific applications is far below expectations. The main reason is that programming of parallel systems is still far too complex. Starting from an analysis of the user requirements, this paper explains our strategy towards next-generation parallel programming environments. We first discuss the problem areas of parallel programming from a user's point of view and give an overview on existing low-, high- and intermediate-level tools. We summarize our objectives and the status of our research. Then we discuss three enabling technologies to overcome current-days limitations of tool environments for parallel computing: formal specification languages, artificial intelligence, and compiler technology. The impact of these technologies on the components proposed for a next-generation programming environment is discussed in detail.
parallel computing specification language artificial intelligence compiler technology development environment user interface distributed memory high performance