Pervasive Technology Labs logo

MPI.NET: High-Performance C# Library for Message Passing

  |   Home   |   Download   |   Documentation   |  

MPI.NET

MPI.NET is a high-performance, easy-to-use implementation of the Message Passing Interface (MPI) for Microsoft's .NET environment. MPI is the de facto standard for writing parallel programs running on a distributed memory system, such as a compute cluster, and is widely implemented. Most MPI implementations provide support for writing MPI programs in C, C++, and Fortran. MPI.NET provides support for all of the .NET languages (especially C#), and includes significant extensions (such as automatic serialization of objects) that make it far easier to build parallel programs that run on clusters.

News

  • June 19, 2008: The MPI.NET 0.9.0 release is now available, bringing bug fixes and documentation improvements. Please visit our download page to install this updated version of MPI.NET.
  • June 8, 2008: The MPI.NET 0.8.0 release is now available, with a crucial bug fix for sending large, serialized data types and some minor improvements to the documentation and MPI. Please visit our download page to install this updated version of MPI.NET.
  • February 18, 2008: Douglas Gregor will be giving a talk about MPI.NET at the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP '08) this week in Salt Lake City, Utah.
  • November 11, 2007: The MPI.NET 0.5.0 Technology Preview release is now available, providing a high-performance, easy-to-use MPI interface for C# and the other Microsoft .NET languages. Please see our download page for more information.
  • April, 2007: We have begun development of a completely new, open source MPI.NET library written in C#. This new MPI.NET is based on Boost.MPI, and will provide a far more natural and expressive high-level interface to MPI from C# and the other .NET languages. A preview release of MPI.NET will be available here for SC '07.