Features of the software:
EUROSmpi provides services, which facilitate the implementation of applications for distributed systems. The goal of a distributed system is the parallelization of a program execution, in order to achieve shorter run times. In order for multiple processors to execute together particular task, 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 extend.
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:
• Homogeneous Systems: Microcontrollers of the same architecture, usually closely coupled, such as multiple processors in a parallel computer, which are connected by a special communication bus.
• Heterogeneous systems: Microcontrollers of arbitrary architecture, usually loosely coupled and distributed spatially, such as computer systems that communicate over an Ethernet line..
EUROSmpi is basically designed for both types, since it is not linked to a specific protocol or to a particular communication medium. Regardless of whether it is a homogeneous or heterogeneous system, the user should merely provide the medium of communication, which will take care over the transportation of messages through the network. This medium is hereinafter referred to as the transportation handler.
The prerequisite to use the EUROSmpi in heterogeneous systems is that all computer nodes are equipped with the operating system EUROS including EUROSmpi. The proper communication over MPI systems from other manufacturers is not guaranteed by the MPI standard and would probably fail due to the different protocols of the he respective MPI implementations.
A further problem can arise in heterogeneous systems, in which the computer nodes interpret the same data differently. For example, an integer is represented on the one computer node as a 32 bit number and on the other as a 16 bit number. The computer architectures differ also, in the manner as integers are stores - either in the form of little endian or big endian. In addition, the use of different compilers can lead to inconsistencies, even if all nodes utilize the same computer architecture.
EUROSmpi meets some precautions, in spite of these issues 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 an unified basis for the development of distributed EUROS-based applications.
Other hardware requirements:
• To communicate with an external medium, where appropriate Ethernet controller.
• 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).
Lesen Sie mehr: