[ News | IPCA | Mirrors | Add | Search | Mail | Help | WoTUG ]
Abstract: Although a network of workstations represents a large amount of aggregate computing power, there is a need for software that can harness this power for single, distributed applications. Enterprise is an interactive graphical programming environment for designing, coding, debugging, testing, monitoring, profiling and executing programs in a distributed hardware environment. Enterprise code looks like familiar sequential code because the parallelism is expressed graphically and independently of the code. The system automatically inserts the code necessary to correctly handle communication and synchronization, allowing the rapid construction of distributed programs. The system supports load balancing and dynamic distribution of work in environments with changing resource utilization. This paper focuses on the Enterprise programming model and some experiences using it.
Abstract: This paper discusses an experiment to compare the usability of two parallel programming systems (PPS). In this experiment, (half of the students in a graduate parallel and distributed computing course solved a problem using the Enterprise PPS while the other half solved the same problem using a PVM-like library of message-passing routines. The feedback fromsuchexperiments is necessary to help narrow the gap between what parallel programmers want, and what current PPSs provide.
Abstract: Selecting a distributed communication system is a balancing act. Ease of use, efficiency of the final product, and future needs are not mutually exclusive considerations. Several questions spring to mind immediately. Whatare the requirements of the communication system? What is available to use? What are the requirements of the user? Software engineers desire software to have clean interfaces and to make any internal details inaccessible to the other components. Performance users want the software to be scalable, efficient, and easy to use, read, and debug. This paper examines four communication systems (ISIS, NMP, PVM, Concert C from these two points of view. Several programs designed to test the performance of the communication system are used as examples for comparing features. These programs are neither definitive test programs nor do they have complicated communication structures. Rather, they are used to highlight potential problem areas and implementation differences. All four of these communication systems are being evaluated for the Enterprise project. Enterprise is a programming environment for developing and running distributed parallel programs on a network of workstations. Enterprise, using templates and a precompiler, constructs a software layer around the application. The user is shielded from the tiresome low-level details of hand crafting the distributed communication portion of the application. Other software tools within Enterprise manage and monitor the distributed program. For two of the comm unication systems (ISIS and NMP) the code was created using Enterprise. The other two systems (PVM and Concert/C) are compared using handcrafted code. A comparision between the Enterprise code and handcrafted code is done using NMP.