[ News | IPCA | Mirrors | Add | Search | Mail | Help | WoTUG ]
Abstract: Parallel computing offers the potential to push the performance of computer systems into new dimensions. Exploiting parallelism, concurrent tasks cooperate in solving huge computational problems. The theoretical foundations of parallel processing are well- established, and numerous types of parallel computers and environments are commercially available. The main obstacle for a broad application of parallel technology is the lack of parallel programming standards. This research is aimed to promote the acceptance of the Message-Passing Interface (MPI) provides the means for writing portable software on a wide variety of parallel computers under UNIX. This thesis outlines the development and implementation of MPI for MS-Windows 3.1, which we call WinMPI. The goal of WinMPI is two-fold: 1. as a development tool, to allow the easy and inexpensive implementation of parallel software, and 2. as a learning tool, to provide a larger group of computer users the opportunity to gain first experience with parallel programming. We give an introduction to the MPI standard, illustrated by an MPI example program. We discuss design and implementation issues for WinMPI, focusing on the simulation of a UNIX-like run-time environment in Windows. Among others, preemptive multitasking, process start-up, and shared memory communication are addressed. Special consideration is given to the implementation of WinMPI applications. We describe instructions for porting MPI applications between WinMPI and UNIX. Users with some background in MPI programming will find sufficient information to succeed in employing WinMPI for parallel programming projects.
Author: Joerg Meyer (jmeyer1@unocss.unomaha.edu)
Currently, compiling the WinMPI libraries and implementing
MPI applications require Microsoft Visual C++ 1.5 or Borland
C++ 3.1.
Authors: Joerg Meyer (jmeyer1@unocss.unomaha.edu), Department of Computer Science, University of
Nebraska at Omaha and
Hesham El-Rewini, Department of Computer Science, University of
Nebraska at Omaha.