Intro Background Projects Offers Publications Downloads Staff
ISPRAS Description Logo
Home   R&D Groups   Projects   Grants   Publications   Downloads

       mpC is a high-level parallel language (an extension of ANSI C), designed specially to develop portable adaptable applications for heterogeneous networks of computers. The main idea underlying mpC is that an mpC application explicitly defines an abstract network and distributes data, computations and communications over the network. The mpC programming system uses this information to map the abstract network to any real executing network in such a way that ensures efficient running of the application on this real network. This mapping is performed in run time and based on information about performances of processors and links of the real network, dynamically adapting the program to the executing network. The first version of the mpC programming system for networks of workstations and PCs became available early in 1997 from our homepage By the end of 1998, there have been more than 400 successful downloads of the mpC software from around the world. Currently, version 2.2.0 is available.

       The mpC programming system includes a compiler, a run-time support system (RTSS), a library, and a command-line user interface. The compiler translates a source mpC program into the ANSI C program with calls to functions of RTSS. RTSS manages processes, constituting the parallel program, and provides communications. It encapsulates a particular communication platform (currently, a subset of MPI) ensuring platform-independence of the rest of system components.
       More information...


Copyright © 2002 ISP RAS