After the success of initial WMPI versions based on MPICH architectures, WMPI is now based on a new internal architecture designed and optimized for MS Windows and Linux clusters. WMPI takes full advantage of multithreading capabilities and synchronization mechanisms available in the operating systems.
WMPI features include:
| Support for MPI 1.1, MPI 1.2 extensions; | |||
| Single-memory-copy semantics for shared memory communication; | |||
| OpenMP ready, full thread safety; | |||
| Support for TCP and SMP devices; | |||
| Advanced architecture, capable of supporting many different communication devices simultaneously; | |||
| Efficient, non-polling implementation; | |||
| Full overlap of communication and computation; | |||
| Asynchronous completion notification; | |||
| Automatic Remote Installation; | |||
| Supports simultaneous independent MPI computations in the same CPU, with partial or complete overlap; | |||
| Mpiexec is not mandatory to launch an application; | |||
| Optimized use of synchronization mechanisms; | |||
| C/C++ bindings with support for MS Visual C++ 6.0 and 7.0 (.NET) or any other C89 compliant compiler; | |||
| Fortran bindings (F77 and F90 standard) with support for Compaq Visual Fortran 6.1, Absoft Pro Fortran 7.0 and Lahney/Fujitsu Fortran 5.6 IDE's/compilers; | |||
| Supports Windows based clusters (WinNT 4.0, Win2000 Pro/Advanced Server, WinXP, Win Server 2003); | |||
| Supports Linux based clusters (Red Hat, Mandrake, SuSe, Debian, and other kernel 2.4.x distributions or higher); | |||
|
|
Supported Platforms
|
|
|
Windows platforms
|
Linux Distributions
|
|
Windows NT 4.0 (SP 4 and above)
Windows 2000
Windows XP
Windows 2003 Server
|
Turbo Linux 7.0
Debian 3.0
SuSe 8.1
Red Hat 9.0
Gentoo 1.4
Mandrake 9.1
Slackware 9.1
|
|
Supported Compilers
|
|
|
Windows platforms
|
Linux Distributions
|
|
MS Visual C++ 6.0
MS Visual C++ 7.0 (.NET)
C89 compliant compiler
Compaq Visual Fortran 6.1A
Lahey/Fujitsu Fortran 5.6
Absoft Pro Fortran 7.0
|
GNU Compiler collection 2.95, 3.2 or
3.3
|
Latency
As one of the barriers to effective speedups in message passing, communication latency, was an object of special care in the latest release. Latency was reduced by as much as 50% in WMPI versions 1.5 an onwards. Internal memory copies were almost entirely removed so that data may flow directly from the communication media into the user-level buffers speeding up user applications.
Thread-Safe
WMPI provides the highest level of thread safety introduced in the MPI 2 standard. Multiple threads can execute MPI functions at the same time and communicate between each other using MPI functions, allowing applications to effectively exploit the CPU power within each machine.
TCP-IP and Shared Memory
WMPI supports data exchange through TCP/IP and shared memory - support for other communication technologies such as Infiniband are underway.
MFC Integration
WMPI integrates smoothly with the Microsoft Foundation Classes (MFC) allowing easy access to a wealth of features and GUI functions.
Adaptation to existing clusters
WMPI provides the ability to adapt to the characteristics of each cluster, deciding what communication media and security contexts to use in order to maximize performance and security according to user preferences.
Multiple Devices
WMPI is modular, providing the support for different communication technologies in separate Windows DLLs that can be used simultaneously in any combination. This makes WMPIs memory footprint smaller.
Security
WMPI uses the Windows security mechanism to run the MPI process inside each user's context. This protects users and system data while sharing clusters.
For information about support for other systems and development
environments, please contact
Download here the WMPI brochure


