Current Proposals for Parallel C++

As powerful microprocessors become increasingly cheaper, there is a growing trend towards distributed processing on groups of these processors, both in the forms of networks of workstations, as well as distributed-memory computers where each processing node has its own local memory, and there is no global memory. Parallel applications are constructed by starting a program on each of the nodes in the network or distributed-memory computer, and having the individual programs communicate by sending messages to each other. Common message-passing libraries, such as MPI, PVM, and P4, are available to enhance portability across different platforms. There is an obvious analogy between sending messages between the nodes involved in these parallel applications and sending messages between objects in an object-oriented application. But programming with message passing libraries is cumbersome. Programs are easier to write when the programmer can use a familier language. With this in mind, there has been much work on extending object-oriented languages to support parallelism, especially C++. However, there are many differences between the various proposals. Some use language extensions and require compiler support, while others use class libraries. Some support control parallelism, while others support data parallelism. In this presentation, we describe the features of some competing proposals for adding parallelism to C++. We also code a simple example in each of the proposals. (ScalParSys)

By: Howard L. Operowsky

Published in: RC20265 in 1995

LIMITED DISTRIBUTION NOTICE:

This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.

7906.ps.gz

Questions about this service can be mailed to reports@us.ibm.com .