并行处理的扩展冯诺依曼结构_第1页
并行处理的扩展冯诺依曼结构_第2页
并行处理的扩展冯诺依曼结构_第3页
并行处理的扩展冯诺依曼结构_第4页
并行处理的扩展冯诺依曼结构_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Evon:并行处理的扩展冯诺依曼结构Wai-Mee ChlngIBM T. J. Watson Research CenterP.O. Box 218Yorktown Heights, New York 10598摘要我们为并行处理提出了名为Evon的扩展冯诺依曼结构,它是集中控制的,并且可以利 用高级语言程序固有的并行的指令级和表示层。利用并行的有效性很大程度上依赖于强大的 原语,我们通过几个简短的用APL编程的例子解释了这一点。然后我们提出了体现Evon 模型的指令集的设计的工作,以及针对并行自动提取的指令集的便携式编译器。最后,我们 比较了 Evon与其他的为并行处理提出的基于实际考虑和

2、编程担忧的计算模型和架构。1.介绍并行处理的不同方法可以围绕不同的标准来讨论。第一个标准是计算机的专用性还是通 用性。对于特殊目的的并行计算机,例如约克顿模拟引擎,它的速率是序列机9、19的 5000倍。另一方面,对于一般用途的机器,只有一般的并行已经取得了实际使用,例如Cray X-MP。在对一般用途的高度并行结构的研究中已经提出了许多计算模型和相应的架构。在 对并行处理的讨论中构成了主要的标准。在计算模型的竞争中,通过对并行处理的研究,以 下是最积极:驱动控制或多处理器的冯诺依曼形式,数据流以及驱动需求或减少(见114)。 此外,还包括一些混合模型例如Rediflow18以及Eazyflo

3、w16。不同的计算模式强调在不 同的粒度级别的并行开发。一般来说,当数据流处于表示层的同时冯诺依曼多处理器的结构 在程序级并行。在冯诺依曼多处理器模式中,SIMD和MIMD是有区别的,他们的差别存 在叫唤网络互联拓扑结构,以及是否分组交换和电路交换。Treleaven和Hopkins24指出冯诺依曼的成功与他的通用性有关。对比于迄今为止适用 于通用系统中的有限并行,并行处理的竞争模型的繁荣显示确定真正通用的并行计算模型很 困难。我们相信,冯诺依曼的成功还必须与简单概念以及可实现的硬件执行和编程。因此, 另一个往往在讨论中被忽略的标准是并行处理涉及到编程和语言的一系列问题。并行应该被 明确指定还

4、是在高级语言编译器中被暗中编程及提取?我们是否应该使用已建立的语言或 一个新的语言来实现并行处理(见212015)?在并行处理中传统的编译器总是在硬件项 目后面。两个例外是VLIW结构的费希尔的ELI-51210,编译器用于跟踪调度,以及伊利 诺伊大学的Cedar项目11。我们的处理方法也是以编译器为导向的。我们为并行处理提出了扩展冯诺依曼模型,称 为Evon。Evon在全球内为中央控制,但是功能指令和独立数据指令可以同时执行,类似于 VLIW结构的费ELI-512,它拥有单一指令流,但是不同于传统的SIMD机。类似于ELI-S 12 中的超长指令字,每个Evon指令有可能命令大量的硬件并行运

5、作。类似于Cedar,Evon使 用强大的(复合)函数来进行并行计算,同时适用于一定层的数据流的原则。在VLIW和 Cedar中,Evon伴随着一个复杂的编译器,这个编译器追踪用高级语言编写的程序的并行度, 所以程序员不用考虑并行分解的工作和子同步作业。Evon不同于VLIW结构和Cedar的是 最有可能或最适合的用于并行机上的高级语言隐含的假设。ELI-512和Cedar假设程序使用 传统的标量冯诺依曼语言例如Fortune语言来写,而Evon假定程序使用矢量冯诺依曼例如 APL。我们将看到下面的编程实例,这种语言的变化对于前面的假设没有很重要意义,这两 个假设是基于什么是在一个高级语言程序

6、并行执行的主要障碍。虽然Evon非常想一个向量 超级计算机,下面的章节将介绍Evon比传统的向量处理器负担更高的并行度。我们应该报告我们关于定义E-code指令集作为Evon模型中特定体现的研究,以及一个 将现有APL的大量的子集转换成E-code的编译器(即E-compiler)的工作。E-compiler上 的工作只不过是我们努力实现在高级语言程序固有的并行性的自动提取目标的第一步。其第 一阶段的成功完成为我们提供了一个学习类似于用Fortran语言编写的Parafrase的各种固有 的并行的编程任务的有效工具。但是我们将能够覆盖一个更广阔的应用领域,包括科学和工 程计算,设计自动化的算法

7、和金融数据处理。2. Evon指令和指令级并行类似于经典的冯诺依曼模型,Evon有一个中央处理单元(CPU),以及通过一个足够的 带宽总线连接到CPU的线性处理全局内存。内存是交叉的以提高其有效带宽。例如,内存 分为32个块,著名的冯诺依曼瓶颈依然存在,但它的容量以增加了 32倍。显然,内存带宽 的增加,必须由一个增加的CPU执行的并发配合才能提高整体性能。在冯诺依曼模型中,每条指令将一个标量基准从内存移到CPU,在CPU执行单元中操 作;或者将基准从CPU存到内存中。每个Evon可以操作没给标量和矢量数据,从CPU移 动一段矢量数据或者标量基准到内存,反之亦然。Evon操作标量和矢量中的四个

8、基本类型 的数据,布尔,定点数字(整数),浮点数(实)和字Evon包含了一些常用的冯诺依曼标 量指令,但是大部分Evon为矢量指令。Evon的向量指令集包含典型的向量处理器中的所有 算术运算。但是还需进一步包含以下:对二进制算术运算的部分结果计算向量,该向量对应于APL中的扫描算子,包含减少 的特殊情况。根据布尔向量选择和扩大向量集。找到关于另一个向量的元素向量的成员和索引。向量的轮换和转变。元素向量的交换(不包含相应的APL原语)然而,它不包括像矩阵乘法、倒置或随机数生成等特殊性质的功能。我们还注意到,在 基本模式下,向量的长度不受限制。但是在任何特定的硬件实现内,CPU里的向量长度要 有一

9、定的逻辑值限制(我们设想不是特定科学应用的计算机的逻辑值为128到1024)。话句 话说,当内存中的向量长于CPU设定的逻辑值限制时,向量必须存在于一个真正的CPU向 量寄存器中。为了利用Evon模型来实现我们对并行处理的研究,以及使我们的情况更加具体,我们 为简化的Evon计算机设计了一个指令集和E-code。图1给出了 Evon计算机的逻辑结构。 这个计算机有4个最大长度的向量累加器:BV、CV、IV和EV,它们对应的数据类型为布 尔、字符、整数、浮点数。一个向量累加器里的一个向量的有效长度根据其类型由内部长度 寄存器BL、CL、IL、EL控制。在370系统中它还包括标量寄存器R0-R15

10、,以及F0、F2、 F4和F6。E-code比如370是双地址代码,即一个目标操作数可以是标量寄存器、向量累加 器或者存储操作的内存位置。4中对E-code有进一步说明。370系统上E-code 一个基本执 行已经完成。我们注意到,这里介绍的E-code只作为讨论一些编程实例机器代码的方便的 工具。其基本机组织并不代表一个Evon模型的理想实现。一个Evon的CPU包含三个部分:(1)负责指令解码、调度和纠错的I-box。(2)负责 内存地址计算、寄存器文件和内存访问与数据传输的M-box。(3)负责算术和逻辑运算功能 的E-box。E-box是操作单元如+、*、=等的功能集合。对于每个算术功

11、能都有独立的标量和 向量执行内容。对每一个向量运算的功能元素,重复的硬件执行单元执行向量部分中实际计 算。例如32位的浮点乘法器。然而在功能元素中重复的次数不同。这与相对扩散或不同功 能执行单元的管线级数相关,例如,定点加法器多余乘法器。复制硬件设备将克服传统向量 处理的管线级的有效并行的限制。众所周知,典型的向量指令可以节省一个传统机器上的向量环的重复的指令存取和解码。 但是Evon包含以下所有向量机中没有的并行特点:首先,Evon硬件支持上面1)到4)中举出的重要的复合操作的并行执行。尤其的,操 作数寄存器和功能元素上的执行单元数组可以硬件实现计算一个向量上的特殊二进制运算 的所有部分结果

12、的n倍。图2解释了 8要素向量的基本思想。我们同时说明了特定功能元素。 第一行中,向量V中的8个元素V0-V7被分配8个寄存器R0-R7中。经过第一轮的4个加 法器的并行运算,偶数寄存器的内容没有改变,但是奇数寄存器包含了原有内容的总和。我 们注意到,图2中两行的集合代表了一个操作单元,像一个功能元素的加法器。第三轮的操 作中,结果存储在r7中。在第4(1+log8)轮的操作中部分值被计算并存于r0-r7中(详细 见56)。第4组中的指令可以通过在与另一个相连的向量寄存器上进行并行相关的研究的 电路执行(然而,Evon并不是关联处理器,因为它不采用相关内存)。第二,Evon期望每个指令的基本块

13、(下节中介绍)组成的编译器的流。V型流(指令) 是一个指令序列,例如1)包括所有的相同长度的向量(或者所有的标量),2)一条指令的 结果作为下一次操作。一个编译器中的V流的指令组是静态链接。Cray-I的链接技术允许 继承(向量)操作可以作为一个众所周知的操作数。我们注意到,Cray-I中的链接在运行时 间完成,然而Evon要在编译时完成。静态链接的作用是闭环控制微融合。例如,下面的 APL里的代码行。E+D+A+CxB翻译成E-code为:LIA R1,lOOLDI RI,aBMPI Rl,aCST1 Rl,aAAD1 Rl,aDAD1 Rl,aER1是向量长度寄存器,它利用隐式向量累加器记

14、录向量长度。这些指令的特别意义并 不重要。我们想要说明的一点是,刚才的5个指令可以被链接在一起,它们负责整数向量累 加器和内存之间的数据传递以及在整数向量累加器上操作。也就是说,这5个指令将与微指 令共享相同的控制结构。一个在指令的向量元素进行操作将被进行一旦该元素上的以前的操 作已经完成。在微代码级,5个循环中只有一个长度检查。上述第一点的另一个例子如下:当B作为基本人口,以及A0,A1.A99作为1到 99岁的死亡率时,计算人口分布律。PASCAL语言为:P0:= B;FOR I=0 TO 99 DOPI+l:= PI*(l-AI)END;但是在APL中为:P+Bxxl-A翻译成E-cod

15、e为:LIA Rl,lOOLDE Rl,aASBEM 0ADEM 1MPEPMPEM aBMPEP计算向量元素中的部分,可以通过以(n/logn)速度增长的(n/2)个执行单元来 执行。我们注意到,这个例子与冯诺依曼结构中程序同步的多处理器的15的第3节中的例 子一模一样。基本上有两种循环(在标量冯诺依曼语言中编写的程序),独立循环,即一个 迭代的数据独立于以前的迭代数据;依赖循环,即一个迭代的数据在本质上是依赖以往的迭 代(这意味着依赖不能被重命名删除)。上面给出的第一个例子中的链接向量指令是第一种 循环。一个向量机可以很容易的通过流水线处理第一类循环加速,阵列结构也可以处理这类 循环。数据

16、依赖循环列出了并行的困难,即使它可以被一个向量化程序识别。一般情况下, 除了加快探测某些将在一个重叠的方式执行独立部分的循环什么也不能做。Evon的这种方 法是使用APL的扫描操作为核心来表达这种依赖,并提供一台原始机器,即1)的指令, 它控制的大量硬件并行的理论上的最佳时机执行。令人吃惊的是,本质上相似的大量顺序代 码有一个(n/logn)的增长速度,其中功能元素中可实现的执行单元的数量为n/2。例如, 一阶线性递推方程:XOl:= x0;FOR I=0 TO 99 DOXI+1:= XI*AI+DIEND;可以在一个APL序列中被编码为:I*睥/ (0,3) +(3如F并且可以得益于支持快

17、速执行原语的硬件支持。我们要说明的单行编码并不是很好。相反,如果一种语言(或机器)包含足够的高层原 语,那么我们可以加速存储处理一些重要的数据依赖循环的类。APL单行代码是功能程序, 即计算中没有状态的变化。高级原语在相应的PASCAL版本上吸收原先的控制结构,并把 一个数据依赖循环转换为表达式树。此外,并行利用每个Evon指令的相应的执行节点,树 的许多分支可以并行处理,我们将在下节中介绍。从标量冯诺依曼语言的角度来看,指令集并行中很少能够得到并行。但在扩展的冯诺依 曼模型Evon中,许多硬件支持高级原语,情况就变得完全不同。我们可以利用指令集并行 来大大加速计算。基本快调度和局部数据流编译

18、程序每次最多执行一个基本块。一个基本快是一组除了第一个和最后一个分支指令 之外没有其他分支指令的指令群组。我们使用”基本块”来表示“最大块”。如果我们采取APL 那样的高级语言作为源语言,那么一个基本块由编译器的解释程序产生的表达式树组成。每 个表达式树可以在数据依赖限制和硬件单元限制下并行的执行。另外,基本块中的表达式树, 可以不按照源代码中的相应序列来顺序执行。换句话说,Evon是由中央控制的,每次根据 程序流程图执行一个基本块,但是根据数据流原则在本地执行它的代码块。在我们讨论指令调度计划前,先描述一下Evon的指令处理单元,I-box,一般术语I-box 拥有一个指令缓冲区,大的足以容

19、纳每个平均大小的基本块的所有机器指令。I-box的前端 部分是指令的编码单元,可以把指令编码为几个并行指令。为了具体描述,我们假定每个指 令32bit宽。每次可以编码4到8个指令。Evon的这部分很像ELI-512的超长指令字。指令 编码单元有自己的加法器可以计算地址。还有一个基本功用寄存器叫做f-register,用来指示 任意机器周期的功能码元是空闲和执行状态。I-box的末端部分是一个独立的指令栈。我们 假定在Evon中有3到8个指令栈。每个栈的顶端保存着一个在硬件单元可用时即将发出的 指令。我们在前面已经介绍了 v-streams的概念。一个表达式树可以被分解为指令v-streams组

20、。 但是,编译器首先计算内部数据依赖。这些依赖来自我们所关心的基本块中的指令分配变量 和使用这些变量作为操作数的指令。我们之所以忽略块间数据依赖,一个很简单的原因是编 译器程序每次仅执行一个基本块。当一个基本块中的代码块被装载进指令缓冲区时,所有的 变量实体被假定安排在基本块外,而且已经有正确的值。V-stream然后被大碎成块,这些碎 片被称为i-sequences,i-sequences的头部指令尽可能和同一块中的其他指令有依赖。基本块的指令调度计划可以如下描述:一个基本块中的指令的独立i-sequences被编码装 载进各自的指令栈,然后静静地等待被执行。在每组i-sequences的开

21、始执行阶段,这个阶 段中的指令是内部相互独立的,而且在不相关的功能项中执行,他们被装进指令栈和 i-sequences同时并行执行。如果有竞争,由于指令栈数量的限制,编译器将选择拥有最多 i-sequences数据依赖的指令。每个指令会将即将执行的功能位置位,每个即将被分配的指令 会将相应位写进指令。编码和启动指令然后检查f-register看看所需的功能项是否空闲。如 果是,指令栈中的最顶端的将被发布执行。假设一个i-sequences向量,如果不是所有的功 能项可以在一个时间被保护,机器将打乱指令流。那就是说,Evon机器不会坚持按照向量 循环形状来执行。它可以分别执行每个循环来利用可用的

22、功能单元。因此他很像一个加法器, 一个累加器,或者一个向量,在一个运行的编译程序中同时执行。我们注意到这种类型的并 行在CDC Cyber系列和CRAY-1中已经可用。因此,这些运行时间检测在传统矢量机器中 的使用被认为更加复杂。我们将简要阐述调度和基于编译时间依赖的块内并行策略,用下面的例子:找出2到N 的所有素数。不像FORTRAN和PASCAL那样,我们有如下N; V+ 2(洲1)岳2它的分析树如图3所示。基本上,他设置了一个乘法表,而且奇数矢量要被检查。没有在表 中的数字是主要的数字。这个指令流对应于右子树,V的计算是互相独立的。简言之,这两 个被两个打点的半圆环描绘的子树,是数据独立

23、的。他们是计算的主要部分,可以被分别独 立执行。这个例子显示了 Evon可以成功的支持表达式级的并行。我们注意到在我们接近表达式式级的并行的开发和表达式处理器,还有块驱动数据流处 理器和并行顺序程序执行工作都有着很多的相似。我们的调度更加特殊和不同。我们的功 能项仅仅有执行特殊功能的能力。多数并行工作的程序并非我们假定的那样已经序列化。并 且我们仅仅限制在一个基本块。但是他们在很多部分是不同的。尤其是每个指令没有被假定 为等量的时间,我们还考虑了硬件执行时间的限制。无论是Evon还是典型的矢量机器,他们的目标都是使矢量指令更快的运行。但是Evon 来自于复制硬件执行单元,不是简单的流水线技术,

24、在数据的执行上加速,支持一些混合操 作例如扫描,而大多数向量机仅支持缩小。更重要的是,Evon模型依靠基本块中的数据依 赖编译时间检测,并且依靠相应的硬件支持,尽可能的达到表达级的并行,而这些在向量机 中是很难解决的。语言和编译器对多处理器的并行计算的研究多是用的fortran或者pascal。数据流需要需要新的数据流 语言,比如val和id。我们也能够设计一个新的语言。新语言的问题是在编写实时程序时的 不足。我们也能够使用老的语言,比如Fortran。幸运的是,有一个叫做APL的语言适合我 们的要求,这种语言满足我们并行计算的要求,不像Fortran是串行。事实上,APL语言强 调了并行计算

25、的重要性。虽然APL不像Fortran应用那么广泛,但是它也在很多地方用了很 长时间,不如科学计算、设计自动算法、金融计算。它对并行计算很重要。我们还写了 APL 机,APL是解释执行的,我们的目标是使APL机解释执行更快。它有快速的语法单元。过 去在这个方向的努力是微程序。APL的问题是没有一个可用的编译器。这个阻碍了我们的研究,我们没有现成的代码 去学习,去安排实验。因此我们设计了 E-code。他包括了95的语言特征,工程和科学中 的APL程序都能够编译,不需要特别改变。特别是它不需要声明变量和类型。编译器的前 期已经基本完成。他包含了组件来分析类型,变量和数据流分析。本地数据能够很容易

26、的插 入局部,我们也能偶增加其他的组件。后期工作的主要部分也实现了,事实上,我们已经能 够编译的函数在370系统上。编译器证实了 APL语言确实有功能强大。我们编译了三个程序。i)SIMPLE模拟打印机 ii)CUT包含大量的布尔计算和算法。iii)GRAFSTAT用于静态分析和绘图。下面的表写出了 函数的数量,代码的行数,节点数。一个典型的Fortran程序的节点数是10。APL的节点数 比Fortran少。记载了大块的平均数量,控制计算时间。基本块的平均大小很重要。最终,这三个程序没有Fortran和Pascal版本。这意味着APL比Fortran更适合并行计算。从这些程序我们能够看出指令

27、级的并行。我们希望学习各个领域的现存的 程序。我们也希望在一些计算量大的地方用APL编程,以前只能用Fortran的地方。和其他的并行结构比较Neumann模型和数据流模型是并行计算模型中两个最热的方向。他们的拥护者都写了 很多文章。我们应该比较一下Neumann模型、数据流模型和VLIW结构。我不是说我们要 批评这两种流行的方法和VLIW的创新。我们只是想说明Evon对一般的并行计算应用来说 是一种更务实有效的方法,是一个应该研究的方向。Evon和数据流模型都试图发现表现层次的并行,两种方法的并行都是毫无疑问的。数据流 模型是指令级的并行,这和Neumann恰好相反。然而,指令可能浪费时间去

28、等待不需要的 争论。穿过数据流图的都是变量,既然不允许使用单任务的数据流语言副作用的出现,两个 另外的可靠的操作都可以保证执行的顺序。没有什么能够阻止数据循环。这些都表现在数据 流图上,因此我们需要标记不同的邻近的计算。结构复杂的内部控制模式被发明用来解决这 个问题。管理输入输出队列的困难时因为他们在一个低层次的抽象,换句话说,就是并行的 粒度太小。对比来看,Evon利用了矢量操作,能够高水平的处理矢量循环和频繁的数据依赖循环。 总体控制是集中的,计算是分布式的。换句话说,把一个大的计算分成很多小的计算,然后 把结果组织起来,这样更容易实现。我们可以把Neumann并行模型看成是经典Neuma

29、nn模型的水平扩展,而Evon是垂直。 严格的说,Evon既不是SIMD也不是MIMD,但是它有点像SIMD机器。在SIMD机器中, 每个进程都有指令处理能力。在Evon中功能处理模块只能够执行特定的操作。中心指令处 理和行程安排依赖硬件电路。即便是在MIMD机器就像Neumann机器,在一个进程中同时 处理加法和乘法也是不可能。从硬件的角度来看,Evon更有效。从另一个角度看,Neumann 在处理阵列上有两个有点。第一,微处理器广泛引用,第二,规模不大。例如,我们能够把 成百上千的处理器连接起来。在Evon中,平均有1.5到4个功能单元工作,每个功能单元 的64个执行单元能加速大约100。

30、管道技术能够大大增加速度,但这不是Evon独有的。理论上,MIDM机器也能够开发表现层并行。就像Gottlieb和Schwartz在“网络和大规模 并行算法”中指出的那样,超计算机能够模拟数据流机器。如果用数据流模型来进行表现层 并行那将是一个不可能完成的工作。MIMD机器上网络传输是繁忙的,一次一个多处理器 的Neumann MIMD机器能够有效的解决这个问题。它需要制定一个工作规则,程序员必须 写出并行执行的程序。从另一个角度来看,Evon做这个事情就简单多了。但是类超计算 MIMD做起来比Evon更简单。感觉来说,Evon有更大的潜力。VLIW结构比Neumann机器需要更少的规则,因为

31、VLIW经过这么多年的发展已经很成熟, 确实,很多例子都说明VLIW方法的分支方向是矢量循环。Evon能够在更广泛的并行计算 领域里面应用,因为当程序用Neumann语言来写,编译器能够做更有效的工作。结束以上我们介绍了并行计算的模型。它是由分布全球的控制中心和本地分布式计算组织起 来的一个多功能的系统。它能够有效的执行矢量命令,并且有硬件支持混合的大规模循环计 算。不仅可以并行执行制冷,不同的硬件功能单元还可以并行执行无关的数据。它没有清晰 的流程,而是从高级语言编译器中自动提炼来的。我们为它定义了指令系统,并实现了一个 编译器。我相信在很多科学或者工程即使是商业应用,循环操作都要占用一大部

32、分时间,如 果我们能够发现更有效的节省的方法去做这种计算,那我们就使并行计算在实际工程中前进 了一大步。从何其他的并行计算模型的比较中,我们看出了我们的优点,但是不同的模型被设计用 在并行计算的不同层次何以互补。我们需要测试现有的模型,用不同类型语言实现,让我们 更好的理解各种各样的方法。致谢我要感谢George Almasi在这个研究上对我的支持和鼓励。参考文献T. Agerwala and Arvind, ed., Data Flow System, IEEE Computer, Feb., 1982.Arvind and R.A. Iannucci, A Critique of Mult

33、iprocessing von Neumann Style, Proc. 10hAnnual Intl Symposium on Computer Architecture, 426-436,1983.T.L.Chang and F.D. Fisher, A Block-driven Data- flow Processor, Proc. Infl Conf, on Parallel Processing, 151-155, 1982.W.M. Ching, A Portable Compiler for Parallel Machines, Proc. IEEE Intl Conf, on

34、ComputerDesign, 592-596, 1984.W.M. Ching and D. L. Ostapko, Hardware and an Algorithm for Performing Parallel Prefix Calculation, IBM Technical Disclosure Bulletin, No.Y0884-0007. May, 1984.W.M. Ching and D. L. Ostapko. Regular and Fast Hardware Interconnection for a Group of Execution Units to Calc

35、ulate All Partial Results of an Associative Operation, IBM Technical Disclosure Bulletin, No.Y0884-0694. February, 1985.M.Denneau, The Yorktown Simulation Engine, Proc. ACM-IEEE 19th Design Automation Conf., 55-59, 1982.J. Fisher, Very Long Instruction Word Architectures and the ELI-512, Proc. 10th

36、Annual IntlSymposium on Computer Architecture, 140-150, 1983.D. Gajski, D. Kuck, D. Lawrie, and A. Sameh, Cedar-A Large Scale Multiprocessor, Proc. Infl Conf. on Parallel Processing, 524-529, 1983.A. Gottlieb, R. Grishman, C. Kruskal, K. McAuliffe, L.Rodulph and M.Snir, The NW Ultracomputer- Designi

37、ng a MIMD Shared Memory Parallel Computer, IEEE Trans.onComputers,01.32,175-189, 1983.A.Hassitt, J. Lageshulte and L.Lyon, Implementation of a High Level Language Machine, ACM Connn., 16(1973), 199-212.L Haynes, ed., Highly Parallel Computing, IEEE Computer, Jan., 1982.H.A.Hartung, FORTRAN: “for the

38、 bids”,11, Physics Today, September, 1984.R. Jaganathan and E.A. Ashcroft, Eazyflow: A Hybrid Model for Parallel Processing, Proc. Intl Conf, on Parallel Processing, 514-523, 1984.A. Kapauan, K.Y. Wang, D. Cannon, J. Cuny and L. Snyder, The Pringle: An Experimental System for Parallel Algorithm and Software Testing, Proc. 19

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论