您现在的位置: 万盛学电脑网 >> 操作系统 >> Linux教程 >> 正文

Beowulf 中文HOWTO

作者:佚名    责任编辑:admin    更新时间:2022-06-22

class="22031"> Jacek;Radajewski;and;Douglas;Eadline;
v1.1.1,;22;November;1998;


--------------------------------------------------------------------------------
这份文件介绍Beowulf超级电脑架构和对撰写平行程式提供一些背景知识,并包括一些有趣的文件和网站连接。;
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

1.;前言
1.1;声明;
我们将不对本文件中不正确的资讯,或者当使用後造成的损失负责。;



1.2;版权;
这份文件的版权Copyright;©;1997;-;1998属於Jacek;Radajewski和Couglas;Eadline。并在GNU;General;Public;Licence允许下散布和修改本文件。;


1.3;有关这份HOWTO;
Jacek;Radajewski在1997年十一月开始编写这份文件,很快地Douglas;Eadline也加入行列,几个月後Beowulf;HOWTO变成长篇的文件,并在1998年八月分成三份,Beowulf;HOWTO、Beowulf;架构设计HOWTO;和Beowulf安装管理;HOWTO。1998年十一月十一日Beowulf;HOWTO;1.0.0版本在Linux;文件计画上发布,我们希望这只是完整的Beowulf;文件计画的第一步。;


1.4;有关这些作者;

Jacek;Radajewski;网管人员,现正在澳洲南昆士兰大学攻读电脑科学。;Jacek於1995年第一次接触Linux就深受吸引,他在1997年建立他自己的第一套;Beowulf电脑群,从那时起开始研究,经常想找到更新和更好的方法架设系统。;□可以透过电子邮件与他联系;[email protected]。;
Douglas;Eadline;博士,也是美国Paralogic公司的董事长和主要科学家。原主修物理及分析化学,1978年建立个人第一台电脑用在化学仪器上,这才开始进入电脑的领域,Eadline博士现在兴趣包括Linux,Beowulf电脑群和平行algorithms,□可以透过电子邮件与他联系;[email protected];

1.5;答谢;
经过长时期的撰写,最後终於完成,特别感谢以下朋友对本文件的帮忙和贡献。;


Becky;的爱、支持和谅解。;
Tom;Sterling,;Don;Becker,;和在NASA;参与Beowulf计画的朋友。;
Thanh;Tran-Cong;和架设topcat;Beowulf;机器的机械量测的教职员。;
提供许多建议的指导老师Christopher;Vance。;
我的朋友;Russell;Waldron;提供程式方面的点子和他热心的参与及支持。;
我的朋友;David;Smith;的校稿。;
许多在Beowulf;mailing;list上的朋友提供的反应及建议。;
所有负责Linux作业系统和在topcat及其他Beowulf机器上使用软体套件的朋友。;


--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

2.;简介

当容易取得的电脑和网路硬体的效能提升,并且价格不断滑落,利用这些市面贩售的电脑组装成平行电脑就变得非常可行,而不需要花钱在价格高昂的超级电脑上。事实上Beowulf电脑的价格效能比是传统超级电脑的三倍到十倍,Beowulf架构在scale上也不错,它很容易建置,你只需负担硬体设备的费用,而不须负担软体的费用。;


2.1;谁需要阅读这份HOWTO?;
这份HOWTO是设计给对Linux作业系统有些认识的人,对於Beowulf技术、作业系统有深入的认识和网路概念的了解都不是必需的,但是对平行计算有些经验是绝对有好处的(毕竟你总需要些藉口阅读这份文件)。这份HOWTO文件无法回答Beowulf相关的所有问题,但是希望能提供一些想法,并且领导你走向正确的方向,这份文件的目的是提供相关的背景知识,和一些更深入的参考文件。;


2.2;什麽是Beowulf?;
Famed;was;this;Beowulf:;far;flew;the;boast;of;him,;son;of;Scyld,;in;the;Scandian;lands.;So;becomes;it;a;youth;to;quit;him;well;with;his;father's;friends,;by;fee;and;gift,;that;to;aid;him,;aged,;in;after;days,;come;warriors;willing,;should;war;draw;nigh,;liegemen;loyal:;by;lauded;deeds;shall;an;earl;have;honor;in;every;clan.;Beowulf是用英文书写的最早史诗,描述一个拥有神力和勇气的英雄人物□北欧武夫,和他力战怪兽Grendel的故事,;参见;History;可以找到更多有关北欧武夫的事迹。;

Beowulf的定义可能和建造者或Beowulf超级电脑使用者一样多,有些宣称唯有和NASA原型机相同才称为Beowulf,也有人认为只要在一群工作站上执行平行程式就可以称为Beowulf。我对Beowulf的定义是介於二者之间,主要根据Beowulf;mailing;list上的一些张贴邮件。;


Beowulf是一种用来作平行计算的电脑群架构,通常是由一台伺服端和一台以上用户端透过乙太网路或其他网路连接的系统,它是用市面贩售的硬体(像是装有Linux的个人电脑)、标准乙太网路卡和交换式集线器,它不包含任何特殊的硬体设备,是可以重新制造。Beowulf并且使用容易取得的软体,如Linux作业系统、PVM(Parallel;Virtual;Machine)和MPI(Message;Passing;Interface)。伺服端控制整个电脑群,提供用户端档案服务,它并且也是电脑群的控制台和通讯闸,提供对外连接的出口。大型的Beowulf电脑群可能不只一台伺服端,可能有些电脑有特定用途,例如控制台或监视站,用户端在大多数情况下是不做额外的事情,额外事情做的越少越好。用户端是由伺服端规划和控制,只做它们被分派的工作。在一个无硬碟用户端的架构,用户端甚至不必知道各自的IP位址或名称,一直到伺服端告知为止。Beowulf和工作站群最大的差异点在於Beowulf看起来比较像一台机器,而不是许多台工作站。在大部分情形用户端不需要备有键盘和萤幕,只需要透过远端登入或序列式终端萤幕登入,Beowulf的用户端可视为处理器和记忆体的组合,嵌入一个电脑群内,就像处理器或记忆体模组被嵌入主机板上。;



Beowulf不属於特定软体套件、崭新的网路拓扑或是最新的核心骇客,Beowulf是一套串连Linux电脑成超级虚拟平行电脑的技术,虽然有许多的相关软体套件,如修改过的核心、PVM和MPI程式库以及规划工具(可以让Beowulf架构更快速、便捷地规划系统),任何人也都可以只靠Linux标准套件,不需要额外的辅助就可以建立一套标准的Beowulf机器。假如你有二台已经上网的Linux电脑,并且可以透过NFS共用/home;档案系统和执行rsh(remote;shells)指令,这样你可以算是拥有一台简单的双节点Beowulf机器。;



2.3;分类;
Beowulf系统已经由各种不同部份组成,为了效能的考量,一些非商品化周边设备(只由一家制造商生产)已经问世,为了易於解说和讨论各种不同类型的系统,我们提出下列简单的分类方式:;

第一类BEOWULF:;

这类机器完全由商品化、直接从市面上贩售的零件所组成,我们用电脑购买者(Computer;Shopper)认定标准来定义商品化、直接从市面上贩售的零件(电脑购买者是一种每月出版的杂志,有一英□厚,内容介绍各种电脑系统和零件目录),认定标准如下:;

A;第一类Beowulf是一种机器,它的组成零件至少必须在三种国际性或全球性商业目录上找到。;

第一类系统的好处有:;

硬体设备有很多来源(价格低、容易维护);
不会依赖特定一家硬体供应商;
Linux支援的驱动程式;
通常有一标准基础(如SCSI、Ethernet等);
第一类系统的缺点有:;

需要第二类系统的硬体才有较好的效能;
第二类BEOWULF;

任何没有通过电脑购买者认定标准的机器称之。这并不一定是件坏事,它只是分类的一种。;

第二类系统的好处有:;

效能相当地好;
第二类系统的缺点有;:;

驱动程式的供应经常更换;
依赖特定一家硬体供应商;
可能比第一类系统昂贵;
没有一种类别比其他的优秀,全凭使用者的需求和预算,这种分类纯粹希望让接下来的讨论更加简明,後头的系统设计章节将会帮助你决定哪一种系统最符合你的要求。;






--------------------------------------------------------------------------------


--------------------------------------------------------------------------------

3.;架构简介


3.1;它长什麽样?;
我认为描述Beowulf超级电脑架构最合适的方法是举一个真实的□例,并且是大多数系统管理者所熟悉的。那就是一个UNIX主机实验室,内有一台伺服端和一群用户端,更精准地说,我会举位在南昆士兰大学理学院DEC;Alpha大学部计算机实验室为例,伺服器被称为;beldin;用户端机器分别称为;scilab01,;scilab02,;scilab03,;一直到;scilab20.;每台用户端内部都安装Digital;Unix;4.0作业系统,但是使用者档案空间(/home)和;/usr/local;都是透过NFS(网路档案系统)从伺服端上获得,每个用户端都可以进入伺服端,并且所有其他的用户端都会记载在;/etc/hosts.equiv;档案内,因此每个用户端都可以用远端操作壳(rsh)。伺服端也是整个实验室的NIS伺服器,因此所有的机器都有相同的帐号资料,某人可以坐在scilab02的控制台前登入,就像他登入伺服端或scilab15.;一样有相同的环境,所有的用户端有相同环境的原因在於所有的机器都安装和规划相同的作业系统,并且使用者的/home;和;/usr/local;区域实体上都位在伺服端上,可以透过NFS进入。NIS和NFS更进一步的讯息请参阅;NIS;和;NFS;HOWTOs.;



3.2;如何有效利用其他节点?;

现在我们对系统架构有些概念,让我们看看如何使用计算机实验室内可供使用的CPU。任何人可以登入任何一台机器,并且在每个人自己的目录下执行程式,他们也可以透过远端操作壳在其他电脑上启动(spawn)相同的程