MPI的语言绑定 FORTRAN77/C/Fortran90/C++ 在MPI-1中,明确提出了MPI和FORTRAN 77与C语言的绑定,并且给出了通用接口和针对FORTRAN 77与C的专用接口说明,MPI-1的成功说明MPI选择的语言绑定策略是正确和可行的。 Fortran90是FORTRAN的扩充,它在表达数组运算方面有独特的优势,还增加了模块等现代语言的方便开发与使用的各种特征,它目前面临的一个问题是Fortran90编译器远不如FORTRAN 77编译器那样随处可见,但提供Fortran90编译器的厂商正在逐步增多。C++作为面向对象的高级语言,随着编译器效率和处理器速度的提高,它可以取得接近于C的代码效率,面向对象的编程思想已经被广为接受,因此在MPI-2中,除了和原来的FORTRAN 77和C语言实现绑定之外,进一步与Fortran90和C++结合起来,提供了四种不同的接口,为编程者提供了更多选择的余地。但是MPI-2目前还没有完整的实现版本。 MPI的实现 列出了一些主要的MPI免费实现。
MPICH是一种最重要的MPI实现,它可以免费从http://www-unix.mcs.anl.gov/mpi/mpich取得。更为重要的是,MPICH是一个与MPI-1规范同步发展的版本,每当MPI推出新的版本,就会有相应的MPICH的实现版本,目前MPICH的最新版本是MPICH-1.2.1,它支持部分的 MPI-2的特征。Argonne国家试验室和MSU对MPICH作出了重要的贡献。 CHIMP是Edinburgh开发的另一个免费MPI实现,是在EPCC(Edinburgh Parallel Computing Centre)的支持下进行的,从ftp://ftp.epcc.ed.ac.uk/pub/packages/chimp/release/可以免费下载该软件,CHIMP的开发从1991年到1994年,主要开发人员有Alasdair Bruce, James (Hamish) Mills,和Gordon Smith。 LAM (Local Area Multicomputer)也是免费的MPI实现,由Ohio State University 开发,它目前的最新版本是LAM/MPI 6.3.2,可以从http://www.mpi.nd.edu/lam/download/ 下载。它主要用于异构的计算机网络计算系统。 本节小结: |
|||||||||||||||