[翻译]高性能计算Linux集群,第二部分:构建一个可..
时间:2006-02-08 来源:jiangqihua
原文:http://www-128.ibm.com/developerworks/linux/library/l-cluster2/index.html
作者:Aditya Narayan ([email protected]), Founder, QCD Microsystems
中文翻译:Jiang Qihua
由 于开源软件观念和集群技术的发展,高性能计算(High Performance Computing)正变得越来越容易,这两篇文章的第二篇将讨论使用MPI的并行编程,并简单地看一下集群管理和基准.还要展示如何使用OSCAR建立 一个Linux集群,OSCAR是一个用来构建强大集群的开源项目.
这个系列的第一部分,集群基础,讨论了集群的分类,使用,HPC基础,和集群技术在HPC中增长的原因.
这 篇文章涵盖并行算法,并展示如何写并行程序,建立集群和集群基准分析.我们将使用MPI来研究并行算法建立一个Linux集群.在这篇文章里会碰见 OSCAR,一个帮助你建立强大集群的开源项目.此外,我们将概览集群管理和基准分析原则,逐条完成在一个集群上运行标准LINPACK测试的步骤.
如果你已经安装了Linux, 你就能够在阅读本片文章之后安装Linux集群和找出所发生的错误,在资源中所列出的有用的链接会帮助你学习更多关于集群的知识.
集群和并行编程平台
正如你在第一部分所看到的,HPC几乎就是关于并行编程的.而并行编程已经是一个发展相当完全的领域,在过去的二十年里,许多编程平台和标准都已经围绕着它建立了.
在HPC中最常用的两个硬件平台是内存共享系统和内存分布系统,细节请参考第一部分.
在内存共享系统中,高性能FORTRAN是一个合适并行编程的语言,它有效地利用了数据并行性,它能够同时操作整个数组,这是通过在不同的处理器上对同一 数组的不同索引执行指令而达到的。这样在编程者这面就可以以最小代价实现并行运算.(Jamaica项目是这样的一个例子,标准Java程序被一个特殊编 译器重组以产生多线程代码. 此代码就能自动利用SMP架构来并行运行.)
在内存分布系统中,由于内存是分开的,所以情况变得相当复杂,你必须写出适应硬件的底层分布性特质的代码并使用明确的消息传递来在不同的节点间交换消息. 并行虚拟机器(Parallel Virtual Machines,PVM)曾经是一个这样的并行编程语言,但近来MPI成为了为集群编写并行程序的事实标准。
FORTRAN,C,和C++的高品质的MPI实现在Linux系统中可以免费取得。两个流行的MPI实现是
作者:Aditya Narayan ([email protected]), Founder, QCD Microsystems
中文翻译:Jiang Qihua
由 于开源软件观念和集群技术的发展,高性能计算(High Performance Computing)正变得越来越容易,这两篇文章的第二篇将讨论使用MPI的并行编程,并简单地看一下集群管理和基准.还要展示如何使用OSCAR建立 一个Linux集群,OSCAR是一个用来构建强大集群的开源项目.
这个系列的第一部分,集群基础,讨论了集群的分类,使用,HPC基础,和集群技术在HPC中增长的原因.
这 篇文章涵盖并行算法,并展示如何写并行程序,建立集群和集群基准分析.我们将使用MPI来研究并行算法建立一个Linux集群.在这篇文章里会碰见 OSCAR,一个帮助你建立强大集群的开源项目.此外,我们将概览集群管理和基准分析原则,逐条完成在一个集群上运行标准LINPACK测试的步骤.
如果你已经安装了Linux, 你就能够在阅读本片文章之后安装Linux集群和找出所发生的错误,在资源中所列出的有用的链接会帮助你学习更多关于集群的知识.
集群和并行编程平台
正如你在第一部分所看到的,HPC几乎就是关于并行编程的.而并行编程已经是一个发展相当完全的领域,在过去的二十年里,许多编程平台和标准都已经围绕着它建立了.
在HPC中最常用的两个硬件平台是内存共享系统和内存分布系统,细节请参考第一部分.
在内存共享系统中,高性能FORTRAN是一个合适并行编程的语言,它有效地利用了数据并行性,它能够同时操作整个数组,这是通过在不同的处理器上对同一 数组的不同索引执行指令而达到的。这样在编程者这面就可以以最小代价实现并行运算.(Jamaica项目是这样的一个例子,标准Java程序被一个特殊编 译器重组以产生多线程代码. 此代码就能自动利用SMP架构来并行运行.)
在内存分布系统中,由于内存是分开的,所以情况变得相当复杂,你必须写出适应硬件的底层分布性特质的代码并使用明确的消息传递来在不同的节点间交换消息. 并行虚拟机器(Parallel Virtual Machines,PVM)曾经是一个这样的并行编程语言,但近来MPI成为了为集群编写并行程序的事实标准。
FORTRAN,C,和C++的高品质的MPI实现在Linux系统中可以免费取得。两个流行的MPI实现是
- MPICH
- LAM/MPI
相关阅读 更多 +
排行榜 更多 +