Features of the software:
EUROSmpi provides services that facilitate the implementation of applications for distributed systems. The goal of a distributed system is the parallelization of program execution, in order to achieve shorter run times. In order for multiple processors to execute in parallel, communication and synchronization mechanisms are necessary. The EUROSmpi interface implements the services of the MPI 1.1 standard (MPI: Message Passing Interface), but not to the full extent.
The EUROSmpi interface can be roughly divided into the following functional categories:
• Initialization services
• Services to send and receive messages
• Services for synchronization, for example waiting for the arrival of messages
• Services for status queries
The allocation of the computer nodes can take different shapes. By definition, there are two basic types of distributed systems:
1. Homogeneous Systems. Microcontrollers of the same architecture, usually tighty coupled, such as multiple processors in a parallel computer, which are connected by a special communication bus.
2. Heterogeneous systems. Microcontrollers of arbitrary architecture, usually loosely coupled and distributed spatially, such as computer systems that communicate over an Ethernet line.
EUROSmpi is designed for both types, since it is not linked to a specific protocol or to a particular communication medium. Irrespective of whether the system is homogeneous or heterogeneous, the user merely provides the communication medium, which will take care of the transmission of messages through the network. This medium is hereinafter referred to as the transmission handler.
All computer nodes that use EUROSmpi in a heterogeneous system must support compatible sematic specifications in order to ensure proper communication and handling of the messages passed.
EUROSmpi requires some precautions, to ensure proper communication in heterogeneous systems:
• Conversion of the messages into a hardware-independent format in order to facilate the data exchange between Little and Big Endian systems and between architectures with different word length.
• Conversion of the elements in MPI messages to a compiler-independent format.
These characteristics turn EUROSmpi into a powerful, unified basis for the development of distributed EUROS-based applications.
Other hardware requirements
• Ethernet controller in order to communicate with external media.
• At least 30 kB ROM.
• At least 3 kB RAM including at least 3 kB per node (more exact memory requirements depend on the dimensions of the MPI buffer allocated during the initialization).