MPI(Message Passing Interface)に関するリンク集

情報

The Message Passing Interface (MPI) standard
総本山。
Message Passing Interface Forum
SGI > ODP(Origin Developer Plus) > Programming > Message Passing Interface
サンプルコードも掲載されている。
MPI-Jメーリングリスト
MPI-1/MPI-2(ドラフト)の日本語訳の公開も行っている。

参考資料

理化学研究所・情報基盤センター High Performance Computing(HPC) グループ
「理研スパコン・システム講習会の案内と配付資料」のページで「スカラー・チューニング講習会」と「並列プログラミング(MPI)講習会」で配布したテキストが入手可能。
同志社大学工学部知識工学科知的システムデザイン研究室/超並列計算研究会
PCクラスタ超入門2000の資料の公開。
住商情報システム株式会社 > ADVC
分散メモリ型大規模構造解析ソフトウェア。MPI技術情報もあり。

Implementations

非商用

  • For C/C++
MPICH <BSD-like>
MPICH1 is implementation of MPI-1.1 standard
MPICH2 is implementation of MPI-2 standard
MPICH v3.x is implementation of MPI-3.0 standard
MP-MPICH <BSD>
MP-MPICH stands for Multi-Platform MPICH.
LAM/MPI <BSD>
LAM/MPI is a high quality implementation of the Message Passing Interface (MPI) Standard.
OOMPI(The Object Oriented MPI) package <Software License for OOMPI>
Object Oriented MPI (OOMPI) is a class library specification that encapsulates the functionality of MPI into a functional class hierarchy to provide a simple, flexible, and intuitive interface.
OpenMPI <BSD>
Open MPI is a project that originated as the merging of technologies and resources from several other projects (FT- MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best MPI library available.
GridMPI™ <the NAREGI Public License>
GridMPI is an implementation of the MPI (Message Passing Interface) standard designed for high performance computing in the Grid. It establishes a synthesized cluster environment by efficiently binding multiple cluster computers from geographically distributed sites.
開発は産業技術総合研究所のグリッド研究センターが行っている模様。
BSPonMPI <LGPL>
BSPonMPI is an implementation of the BSPlib standard on top of MPI. More information about BSP you can find at http://www.bsp-worldwide.org
OMPLT(OpenMP Multi-Threaded Template Library) / http://freshmeat.net/projects/ompt <LGPL>
The OMPTL reimplements the algorithmic and numeric parts of the Standard Template Library of C++ to take advantage of parallel computing hardware such as Dual-Core and HyperThreading processors.
  • For .NET Framework
MPI.NET
  • For Java
Jumpi(Java universal message passing interface) <Jumpi License>
Jumpi is a simple low level, generic, protocol agnostic and extensible message passing communications API written in Java.
  • For Ruby
MPI Ruby <Freely Distributable>
  • For Python
pyMPI
pyMPI provides distributed parallel programming for Python. This package builds on traditional Python by enabling users to write distributed, parallel programs based on MPI message passing primitives.

商用

Intel® Cluster Toolkit
Linux向け。

関連ツール

OpenMP
The OpenMP Application Program Interface (API) supports multi-platform shared-memory parallel programming in C/C++ and Fortran on all architectures, including Unix platforms and Windows NT platforms.
PCクラスタコンソーシアム > SCore Cluster System Software
SCore Cluster System Software はワークステーションおよびPC クラスタ用の高性能並列プログラミング環境です。

Develop

Tutorial

ファイヤープロジェクト > MPIで並列プログラミング
MPI tutorial in Fortran
MPI(Message Passing Interface)による、 簡単な並列化 Fortran プログラムの書き方

Sample Source Code

東京工業大学 > MPIチュートリアル

Library

STL MPI <MPL>
The message passing interface (MPI) standard is a library specification for message passing on parallel computers. This project develops an extension to MPI in C++ such that STL objects can be transfered just as easily as fundamental data types.

Tool

Test

MPIUnit <LGPL>
MPIUnitは,MPIプログラムのためのUnit Testing Frameworkです。MPIプログラムのユニットテスト作成/実行を支援します。MPIUnit is a Unit Testing Framework for MPI Programs. This framework supports making and execution of the unit test of MPI programs.

Environment

KNOPPIX for MPI
1CDLinuxでお手軽にPCクラスタ環境を構築。

BenchMark

The SKaMPI(Special Karlsruher MPI) Benchmark
MPIのベンチマークツール。

Debugger

XMPI
XMPI is an X/Motif based graphical user interface for running, debugging and visualizing MPI programs.
Absoft DDT(Distributed Debugging Tool) / http://www.allinea.com
Distributed Debugging Tool は、並列のコードをデバッグする複雑なタスクのために設計された包括的なグラフィカル・インターフェースです。Fortran および C/C++ に対応し、2 CPU 以上のワークステーションから 1024 CPU 以上の高性能クラスタを用いてのプログラミングにおいても、並列アプリケーションのコントロールを可能です。DDT は、すべてのコンパイラ、言語および MPI のために共通のインターフェースを提供し、MPI コードを非常に分かりやすくしてくれます
Etnus TotalView® / http://www.etnus.com
TotalView の GUI は、巨大で複雑なプログラムのデバッグを容易にする為に、ウィンドウ、マウスによる操作、ポップアップメニュー、およびヘルプシステムをかねそなえています。

関連書籍

和書

MPI並列プログラミング
税込円
実践MPI‐2―メッセージパッシング・インタフェースの上級者向け機能
税込¥ 8,684円
PCクラスタ構築法―Linuxによるベオウルフ・システム
税込¥ 27,008円
並列プログラミング入門―ネットワーク結合UNIXマシンによる並列処理
税込¥ 4,212円
並列計算法入門 (計算力学レクチャーシリーズ)
税込¥ 33,458円
Linuxで並列処理をしよう―SCore Version6で作るスーパーコンピュータ
税込¥ 3,024円
Linuxで並列処理をしよう―SCoreで作るスーパーコンピュータ
実践 デバッグ技法 ―GDB、DDD、Eclipseによるデバッギング
税込¥ 3,024円

洋書

Parallel Programming with MPI
税込¥ 7,895円 ※MPI並列プログラミング の原書
Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers
税込¥ 9,542円※並列プログラミング入門―ネットワーク結合UNIXマシンによる並列処理 の原書
Using MPI: Portable Parallel Programming with the Message Passing Interface (Scientific and Engineering Computation)
税込¥ 2,398円
Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation
税込¥ 9,157円
Parallel Programming in C with MPI and OpenMP
税込¥ 29,873円。ハードカバー。
Parallel Programming in C with Mpi and Openmp
税込¥ 58,075円。ペーパーバック。
Multi-Threaded Object-Oriented MPI-Based Message Passing Interface: The ARCH Library (The Springer International Series in Engineering and Computer Science)
税込¥ 17,977円
The Art of Multiprocessor Programming
税込¥ 8,837円

ページ先頭へ   最終更新のRDF 最終更新のRSS
Last-modified: 2009-08-26 (水) 14:36:52 (3436d)
Valid XHTML 1.1 Valid CSS! [Valid RSS]