At the end of 1987, ParaSoft Corporation was founded by a group from CP with the goal of providing a uniform software base-a set of portable programming tools-for all types of parallel processors (Figure 5.6).
Figure 5.6: Express System Components
The resultant system, Express [ParaSoft:88a], is a merger of the CP message passing tools, developed into a unified system that can be supported on all types of parallel computers. The basic components are:
Additionally, ParaSoft added:
ParaSoft extended the parallel debugger originally developed for the nCUBE hypercube [Flower:87c] and created a set of powerful performance analysis tools [Parasoft:88f] to help users analyze and optimize their parallel programs. This toolset, incorporating all of the concepts of the original work and available on a wide range of parallel computers, has been widely accepted and is now the most commonly used system at Caltech. It is interesting to note that the most successful parallel programs are still built around the crystalline style of internode communication originally developed for the Mark II hypercube in 1982. While other systems occasionally seem to offer easier routes to working algorithms, we usually find that a crystalline implementation offers significantly better performance.
At the current stage of development, we also believe that parallel processing is reasonably straightforward. The availability of sophisticated debugging tools, and I/O systems has resulted in several orders of magnitude reduction in debugging time. Similarly, the performance evaluation system has proved itself very powerful in analyzing areas where potential improvements can be made in algorithms.
ParaSoft also supports a range of other parallel computing tools, some of which are described later in this chapter.