开发流水线和指令级并行性.doc_第1页
开发流水线和指令级并行性.doc_第2页
开发流水线和指令级并行性.doc_第3页
开发流水线和指令级并行性.doc_第4页
开发流水线和指令级并行性.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

开发流水线和指令级并行性早起流水线CPU第一个通用流水线处理器被认为是Stretch,IBM 7030。 Stretch跟着IBM 704并且有比704快100倍的目标。目标是当时艺术状态的延伸,因此它有了那个绰号。这个计划是获得1.6个因子从重叠读取,解码和执行,使用一个四阶段的通道。Bloch 1959和Bucholtz1962描述了设计和工程的权衡,包括使用ALU绕过的。一系列的通用通道描述出现在1970年代末和1980年代早期提供大部分的术语和大部分的基本描述技术用于简单的管道。这些调查包括Keller 1975,Ramamoorthy和李1977,陈1980,Kogge 1981 的书,完全奉献给了流水线。Davidson和他的同事(1971-1975)开发了通道的概念作为设计方法预定表对多周期的管道与反馈(还描述了在Kogge1981)。许多设计师使用这些概念的变化,无论是在设计管道或在创建软件都安排他们。 最初设计的RISC处理器与便于实现和流水线在心里。一些早期的RISC论文,发表在早期1980年代,试图量化性能优势的精简指令集。最好的分析,然而,是一个VAX和MIPS对比的实现由Bhandarkar和Clark在1991年出版,10年之后第一次发表论文的RISC(参见图k 1)。经过十年的争论实现效益的RISC, 即使最持怀疑态度的设计师都会对RISC指令集架构的有点产生信服。 JESmith和他的同事们写很多论文检查指令问题、异常处理和CPU高速的通道深度。Kunkel和Smith1986评估影响通道架空和最佳通道深度选择的依赖;他们也有一个优秀的讨论关于锁存器的设计及其影响流水线。Smith和Pleszkun1988评估各种技术来保留精确的异常。Weiss和Smith1984评估各种硬件流水线调度和指令问题。 MIPS R4000是第一个深度流水线微处理器和是被Killian 1991和Heinrich 1993创造的。最初的阿尔法实现(21064)也有类似的指令集和类似的整体流水线结构,与更多的流水线在浮点单元。引入动态调度 在1964年CDC年发布了第一款CDC 6600。 CDC 6600有许多独特的方式。除了引入存储器计数,CDC 6600是第一个处理器使大量使用多个功能单元。它还在外围使用多线程处理器。流水线和之间的交互指令集的设计被理解,和一个简单的、负载储备指令集被用来促进流水线。CDC 6600也用一种先进的包装技术。Thornton 1964 描述了管道和I / O处理器体系结构,包括概念的无序的指令执行。Thornton 的书1970提供了一个很好的描述整个处理器,从技术架构,包括一个由克雷前言。(不幸的是,这书目前已绝版)。CDC 6600还有一个指令调度程序为FORTRAN编译器,被Thorlin描述1967。IBM 360型号91:一个具有里程碑意义的计算机 IBM 360/91引入了许多新概念,包括标签的数据、寄存器从命名、动态检测内存危险,和广义转发。Tomasulo的算法是在他1967年的论文中描述。Anderson,Tomasulo Sparacio1967描述的其他方面,包括处理器使用分支预测。许多想法在360/91淡出使用近25年才被广泛的在1990年代复活。不幸的是,360/91并不成功,只有少数被出售。复杂的设计使它晚到市场,允许模型85,这是第一款IBM处理器缓存超越91。IBM 360型号91:一个具有里程碑意义的计算机分支预测方案 JESmith1981描述了2位动态硬件分支预测方案。Ditzel和McLellan1987描述小说分支预测方案,这实现分支折叠。我们检查了被Pan,So,Rameh1992描述的相关预测。Yeh和Patt1992推广了相关概念和描述了使用分支历史预测因子的每个分支,类似于Pan,So,Rameh1992使用当地历史预测对21264的检查。McFarling的赛事预报方案,他指的是作为一个组合预测中,描述了他1993年的技术报告。它最近有很多的论文分支预测基于多层次的变化并且关于预测器的想法。Kaeli和Emma 1991描述返回地址预测。Evers et al1998是一个深入分析的多级预报器。数据显示在第二章是从Skadron et al1999。有几种方案可以提供一些额外的预测,预测比赛以外的受益。Eden和Mudge 1998和Jimenez 和 Lin 2002描述这样的方法。多问题处理器的发展 IBM在多问题处理领域做出了开创性的工作。在1960年代,一个在加州的叫做ACS的项目,它包括多问题的概念,建议对于动态调度(尽管与一个简单的机制Tomasulo的方案,比使用备份寄存器),取下两个分支路径。这个项目最初作为一种新的体系结构遵循伸展和超越CDC 6600/6800。ACS开始在纽约,但被搬到了加利福尼亚,后来改变了S/360兼容,并最终取消。John Cocke是在一个具有知识力量背景的团队的成员,包括许多IBM前辈和年轻的贡献者,他们中的许多人继续在IBM和其他地方扮演重要角色: Jack Bertram, Ed Sussenguth, Gene Amdahl, Herb Schorr,Fran Allen, Lynn Conway, and Phil Dauber等等. 虽然编译器小组发表了他们的许多想法并且对IBM有很大影响之外,架构的想法没有在那个时间广泛传播。访问这个重要项目最完整的文档是/mark/acs.html,其中包括采访ACS前辈和指针的来源。Sussenguth1999是一个对ACS很好的概述。大多数早期的多问题处理,实际达到一个继承LIW或VLIW设计方法的目标。Charlesworth1981的报告浮点系统AP-120b,第一个宽指令的处理器每条指令包含多个操作。浮点系统应用软件流水线的概念,无论是在一个编译器还是汇编语言库通过只有通过手写使用,处理器才有效。因为处理器是一个连接处理器,许多困难的问题在实现多个通用处理器,例如,虚拟内存和异常处理,可以被忽略。一个有趣的方法用于早期VLIW处理器,如AP-120B和i860,这个主意是由一个流水线结构,需要操作”完成“一个功能单位,结果被抓住了管道的末端。在这样的处理器下,操作时,另一位只能提前从后面推他们操作(按顺序)。此外,一个指令指定的目的地, 当这个新操作的管道完成时是,些时候发布的指令将被挤出。这种方式优点是它不指定目的地当一个操作结果哪怕就是结果寄存器被写入。这消除了需要检测分离WAW和WAR灾害的硬件。缺点是当有一个仍在进行中的操作并且没有该类型的其他操作需要立即决定,它增加代码大小,可能因为空操作会被抛出。而这两个处理器不是用“抛出和捕捉”的方法,几乎所有的设计师选择了使用自动排放管道,指定目的地在发布指令和一个发布指令将完成没有进一步行动。这个优势在代码密度和简化在代码生成似乎超过的优势更不寻常的结构。 在1980年代中期几个研究项目介绍了一些形式的多问题处理。例如,斯坦福的MIPS处理器有能力安排两个操作在一个单一的指令,尽管这种能力是会降低在不同的架构商业,主要由于性能的原因。在耶鲁跟随他的同事们, Fisher 1983提议建立一个处理器很宽的指令(512位)和命名这种类型的处理器为VLIW。代码是由使用跟踪调度处理器生成的,Fisher1981最初研制用于生成水平微码。耶鲁处理器的跟踪调度实施被Fisher et al. 1984和通过Ellis 1986所提出。 尽管IBM取消了ACS,这个领域的活跃研究仍持续到80年代。10年之后ACS被取消了,John Cocke做了一个新款超前的标量处理器,动态地对问题做出决定; 在80年代中期的几个会谈,他和Tilak Agerwala描述的主要思想并且创造了这个术语超标量体系结构。他称之为美国的设计,它是由Agerwala和Cocke1987说提出的。IBM Power1架构(RS / 6000线)基于这些想法(见Bakoglu et al。1989)。 JESmith1984和他的同事在威斯康辛州提出解耦方法,包括多个问题与有限的动态管道调度。这种处理器的一个关键特性是使用队列中维持秩序类的指令(如内存引用),并允许它抛在身后或另一个类的指令之前。航天器ZS-1所描述的Smith et al. 1987体现了这种方法与队列连接负载储备单位和运营单位。设计采用队列的Power2以类似的方式。JESmith1989还描述了动态调度的优势和比较静态调度方法。 投机的概念起源于原始的360/91,执行一个非常有限的形式的投机。在最近的处理器使用的方法结合了动态调度技术的360/91,与缓冲允许按次序的提交。Smith 和 Pleszkun 1988探讨了使用缓冲保持准确的中断和描述一个重新排序缓冲区的概念。Sohi1990描述添加重命名和动态调度,使得有可能使用机制投机。型和他的同事们在早期的支持者激进的重新排序和猜测。他们集中在检查点和重启机制和方法称为HPSm首创,这也是一个扩展的Tomasulo算法Hwu and Patt 1986。 投机的使用作为一个多问题处理器的技术是由Smith, Johnson, 和 Horowitz 1989评价,使用重新排序缓冲区技术;他们的目标是在非科学研究可行的独立代码使用投机和多问题处理。在随后的书中提到, Johnson 1990描述了设计一个投机超标量体系结构的处理器。约翰逊后来将AMD K-5的设计作为第一个超标量体系结构投机。 与之平行超标量体系结构的发展,商业利益在VLIW方法也增加了。在耶鲁这个多流的处理器(见Colwell et al。1987)是基于开发的概念,尽管许多重要的改良,以提高其实用性的方法。这其中就有一个可控商店提供支持缓冲区的投机形式。尽管超过100多流的处理器售出,各种各样的问题,包括困难的引入新的指令集从一个小公司竞争到商业RISC微处理器,提供改变了经济学的小型机市场,导致了失败的多流处理器成为伴侣。 与多流处理器在同一时间的,Cydrome成立建立VLIW处理器的风格(见Rau et al. 1989),这也是不成功的商业。Dehnert, Hsu,和 Bratt 1989解释架构和性能的Cydrome Cydra 5,一个处理器,提供广泛指令字动态寄存器重命名和额外的支持软件流水线。这个Cydra 5是一个独特的混合的硬件和软件,包括有条件的指令和寄存器旋转,旨在提取独立。Cydrome依赖更多的硬件比多流的处理器和实现竞争性能主要在矢量风格代码。最后,Cydrome遭受相似的多流的问题,不是一个商业上的成功。两多流的和Cydrome,虽然不成功的商业实体,生产许多人有广泛的经验在开发独立以及高级编译器技术;许多人已经把他们的经验和部分技术在新处理器。Fisher和Rau 1993编辑全面收集,论文涵盖了硬件和软件的这两个重要的处理器。 Rau也开发了一种名为多环调度的调度技术,这是一个最基础软件流水线方案(见Rau, Glaeser, andPicard 1982)。Rau的工作建立在早期工作是由戴维森和他的同事们设计的最优调度流水线处理器的硬件。其他历史住在离处理器包括阿波罗DN10000和英特尔i860,二者都可以双发射FP和整数操作。编译器技术和硬件支持调度 循环级并行性和依赖性分析发达主要是由D.Kuck和他的同事们在伊利诺伊大学在1970年代。他们也创造了这个术语常用反依赖和输出依赖和发达的几个标准依赖测试,包括GCD和Banerjee测试。 后者测试命名Uptal Banerjee和被装进一个各种各样的口味。最近的工作在依赖分析中在使用各种各样的精确测试结束与一个线性规划算法称为FourierMotzkin. D. Maydan和W. Pugh都表明,序列的精确测试是一个实用的解决方案。 在该区域的揭露和调度独立,很多前期的工作连接到开发的VLIW处理器,前面所描述的。Lam 1988开发和评估算法软件流水线上使用他们扭曲,一个宽的指令字处理器设计用于特殊用途的应用程序。Weiss和Smith 1987比较软件流水线和循环展开作为技术在流水线处理器调度代码。Rau1994模调度处理问题的软件流水线循环和处理寄存器分配得到进化。 支持投机代码调度是在各种语境下的探索,包括几个处理器提供模式的例外忽视,允许更多的激进的调度的负载(如he MIPS TFP pro-cessor Hsu 1994)。几组探索思路更激进的硬件支持投机代码调度。例如, Smith,Horowitz,and Lam1992创建了一个概念叫推进,包含硬件设施支持猜测,但提供了一个检查和恢复机制,类似那些在IA-64和Crusoe。哨兵调度思想,这也是类似这个推测和检查方法用于Crusoe和IA-64体系结构,开发于伊利诺斯大学的研究人员和惠普实验室(见Mahlke et al.1992)。 在1990年代早期,温美胡和他的同事们在伊利诺伊大学开发了一个编译器框架,称为IMPACT (见Chang et al. 1991),为探索之间的交互问题多个体系结构和编译器技术。该项目提出了几个重要的想法,包括超级块调度(见Hwu et al. 1993);广泛使用的分析指导各种优化(如procedure inlining);使用一个特殊的缓冲(类似于ALAT或程控存储缓冲)编译辅助内存冲突检测(见Gallagher et al. 1994)。他们还探讨了性能权衡部分和预测的全部支持在Mahlke et al.1995。 早期的RISC处理器都有延迟分支,微程序设计的方案,和在编译时分支预测被受延迟分支机制的研究。McFarling和Hennessy 1986做了一个定量的比较各种编译时和运行时分支预测方案。Fisher和Freudenberger1992评估一系列的编译时间分支预测方案使用公制之间的距离错误。Ball和Larus1993和Calder et al.1997描述静态预测计划使用收集的程序行为。EPIC和IA-64的开发 EPIC的根源在于些早期的方法尝试构建LIW和VLIW机器尤其是那些在Cydrome和 Multflow和在一个漫长的历史编译器的工作,这些公司失败后继续在惠普,大学伊利诺斯州,和其他地方。见解,在惠普工作的领导设计师提出一个VLIW风格,64位架构遵循HP PA RISC体系结构。英特尔正在寻找一个新的建筑取代x86(现在叫IA-32)架构和提供64位处理的能力。1995年,他们建立了合作关系设计一个新的架构,IA-64(见Huck et al. 2000),并基于它构建处理器。安腾(见Sharangpani和Arora2000)是第一个这样的处理器。2002年,英特尔推出了第二代IA-64设计,安腾2(见McNairy和Soltis2003和McCormick和Knies 2002)。并行指令级的研究和想法建立 一系列早期的文献,包括Tjaden和Flynn 1970、Riseman和Foster 1972,得出结论,只有少量的并行性指令级可以在没有投资大量的硬件下有效执行。这些论文抑制多指令的吸引力问题超过10年。Nicolau和 Fisher 1984发表了一篇基于他们的工作跟踪调度和断言存在大量的潜在的独立科学的报告。 自此之后,已经有很多可用的研究独立。这样的研究已经被批评,因为他们认为一定程度的两个硬件支持和编译器技术。尽管如此,这些研究是有用的来设定预期以及理解的来源的局限性。Wall已经参与几个这样的研究,包括Jouppi和Wall1989, Wall 1991, Wall1993。尽管早期研究被批评为保守(例如,他们不包括猜测),过去的研究是迄今为止最雄心勃勃的独立的研究,日期和基础数据在3.2节。Sohi和Vajapeyam1989给测量可用的并行性宽指令字处理器。Smith, Johnson,和Horowitz 1989也使用一个投机超标量体系结构处理器来研究独立限制。在他们的研究中,他们预期他们指定的处理器是一个上界在合理的设计。最近即将到来的处理器,很可能是作为他们的雄心勃勃的处理器。Skadron et al.1999检查性能权衡和限制在一个处理器与2005年最激进的处理器,结论较大的窗口大小将没有意义,没有显著分支预测的改进程序。 Lam and Wilson 1992看着施加了这些限制投机和可能通过允许处理器投机多个方向的额外的收益,这就需要不止一个电脑。(这样的计划不可能超过什么完美的猜测完成,但他们帮助弥补差距在现实的预测计划和完美的预测。)Wall的1993年的研究包括一个有限的评估这种方法(多达八个分公司进行了探讨)。超越极限的数据流 另一个方法, 在文学中探索是使用价值的预测。预测可以允许投机基于数据值。有被许多研究的使用价值的预测。Lipasti和shen1996年发表的两篇论文评估价值的概念和预测在独立开发的潜在影响。Calder, Reinman,和Tullsen 1999曾想选择值预测。Sodani和Sohi1997用指令处理同样的重用价值观点问题。Moshovos et al.1997表明,决定何时推测,通过跟踪这种投机已经准确是否在过去,是很重要的实现性能收益与价值投机。Moshovos和Sohi1997和Chrysos和Emer 1998关注预测内存得益于使用此信息通过记忆来消除依赖。Gonzlez 1998, Babbay和Mendelson 1998更近期的研究使用的预测价值。这个地区是目前高度活跃,在每一个会议中发表新的结果最近的先进微处理器 1994-1995年宣布宽超标量体系结构的处理器(每个时钟有更多的问题),每个主要处理器供应商:Intel Pentium Pro和奔腾II(这些处理器共享相同的核心,描述管道架构通过Colwell和Steck1995);AMD k-5,k-6,速龙、Sun UltraSPARC(见Lauterbach和Horel1999); Alpha 21164(见Edmondson et al. 1995)和21264(见Kessler 1999);MIPS R10000和R12000(见Yeager et al. 1996);PowerPC 603、604、620(见Diep,Nelson和Shen 1995);和惠普8000(Kumar1997)。 后一部分的十年(1996 - 2000)看到了第二代大部分这些处理器(Pentium III,AMD Athlon,Alpha 21264,等等)。第二代,虽然相似,可以维持一个发行利率较低的CPI和提供更高的时钟频率。所有包括动态调度,几乎普遍支持的猜测。在实践中,许多因素,包括实现技术、内存层次结构、技能设计师,和类型的应用程序测试,所有扮演的角色在决定哪种方法是最好的。 从2000年到2005年期间超标量处理器主要是由三个趋势:引入更高的时钟频率通过更深管道(如在奔腾4(Hinton et al. 2001);引入多线程由IBM在功率4和英特尔的奔腾4; 由IBM在Power的多核4开始的运动,AMD在皓龙处理器(见Keltcher et al.2003),以及最近的由英特尔(见Douglas2005)。多线程和同步多线程多线程的概念可以追溯到最早的晶体管电脑TX 2。TX 2也是著名的计算机,伊万萨瑟兰创造了画板,第一个计算机图形系统。TX 2建于在麻省理工学院的林肯实验室和在1959年开始运作。它利用多个线程上下文切换,支持快速处理I / O功能。Clark 1957描述了基本架构,和Forgie 1957描述了I / O体系结构。多线程也用于CDC 6600,细粒度多线程计划与交叉调度线程中使用体系结构的I / O处理器。这个消息灵通的处理器,一个流水线多处理器检测器设计和运来1982,使用细粒度多线程隐藏管道延迟以及隐藏延迟到一个大内存共享在所有的处理器。因为玫瑰没有缓存,这隐藏的记忆延迟是至关重要的。伯顿史密斯,一个主建筑师,描述了消息灵通的建筑在1978年的一篇论文,和约旦1983发表了性能评价。tb处理器扩展了多线程思想和是被Alverson等人在1992年的一篇论文。尼亚加拉多线程方法是类似于玫瑰和特拉系统,虽然尼亚加拉河采用缓存减少了线程延迟隐藏。在1980年代后期和1990年代早期,研究人员探索粗粒性风步的概念多线程(也称为块多线程)作为一种容忍延迟,尤其是在多处理器环境中。SPARCLE处理器的女主人的系统使用这样一个计划,当高延时切换线程特殊事件,比如长缓存小姐,发生。Agarwal et al.描述SPARCLE在1993年的一篇论文。IBM脉冲星处理器使用类似的想法。到1990年代初,一些研究小组已经抵达两个关键的见解。首先,他们意识到细粒度多线程是为了获得最大的性能优势,因为在一个粗粒度的方法,的开销线程切换和线程启动(如。、充填管道从新的线程)否定大部分的性能优势(见Laudon, Gupta, 和Horowitz 1994)。第二,一些团体意识到有效使用大多的功能单元都需要独立和线程级别的并行性(TLP)。这些见解导致多种架构,使用多线程的组合和多个问题。Wolfe和 Shen 1991描述一个建筑叫XIMD,静态interleaves线程定于一个VLIW处理器。Hirata et al.1992描述一个提议使用媒体处理器相结合的一个静态超标量流水线,支持多线程;他们报告的速度提升从结合两种形式的并行性。Keckler和 Dally 1992结合静态调度和动态调度的线程独立为一个处理器多个功能单元。的问题是如何平衡分配的功能单位独立和张力腿平台之间,如何安排这两个形式的并行性保持开放。当它变得清晰,1990年代中期,超级标量动态安排不久就会发布,一些研究小组提出的使用动态调度能力从几个线程混合指令。Yamamoto et al. 1994似乎是第一个这样的提议,虽然仿真结果他们的多线程体系结构使用简单,超标量体系结构假设。这项工作很快就Tullsen, Eggers, and Levy1995,这是第一个现实的仿真评估和创造了这个术语同步多线程。后续工作由同一组加上工业合作者的开放式问题解决许多关于SMT。例如,Tullsen et al.1996回答的问题挑战的调度独立与张力腿平台。Lo et al.1997是一个广泛讨论的SMT概念和评估其性能潜力,Lo行使Lo et. al. 1998评估数据库性能在SMT处理器。Tuck和 Tullsen 2003审查性能上的SMT奔腾4。IBM Power4介绍多线程(见Tendler et al. 2002),而Power5使用同步多线程。马西斯et al。(2005)探讨了SMT在Power5的性能,而Sinharoy et al.2005描述了系统体系结构。参考文献:Agarwal,A,J kubiatowicz克兰兹B,D,H,D,G D索萨,和M.帕金1993。“SPARCLE:大型多处理器的处理器设计的一种进化,”IEEE微13(六月),4861。阿格瓦拉,T,和J.科克 1987 。“高性能精简指令集处理器,”IBM技术报告(3月)。Alverson, G., R. Alverson, D,D.卡拉汉,生于科布伦茨,是A,和B史密斯 1992 。“利用异构并行多线程处理器,”过程。1992国际会议的超级计算机(十一月),188197。安德森,大卫,J.斯巴拉乔,和M. Tomasulo 1967 。“IBM 360模型91:处理器的哲学和指令处理,”IBM J.的研究与开发11:1(一月),824。奥斯汀,T. M. G.,和sohi 1992 。“普通程序的动态相关性分析,”过程。计算机体系结构第十九研讨会(可能),黄金海岸,澳大利亚,342351。babbay,F,和门德尔松 1998 。“使用价值的预测增加的权力投机执行硬件”,追踪。在计算机系统中16:3(八月),234270。bakoglu,H. B.,G.F. Grohoski,L. E.撒切尔,J. A.咖,C. R.穆尔,D. P.告状,W.E.男,W. R.哈德尔,D. A.希克斯,M. Nguyen Phu,R. K. montoye,W. T.格洛弗,和美国科塔 1989 。“IBM第二代RISC处理器的组织,”过程。国际会议IEEE电脑设计,(十月),黑麦,纽约,138142。Ball, T. 和J. Larus 1993 。“免费的分支预测,”过程。SIGPLAN 93会议编程语言的设计与实现,300313。班达卡,D,和大卫克拉克 1991 。“从结构性能比较RISC和CISC类似的硬件组织,”过程。第四会议的建筑编程语言和操作系统的支持,IEEE / ACM(四月),加州Palo Alto,319,310。班达卡,D,和J.丁 1997 。“奔腾Pro的性能表征处理器,”过程。第三届国际研讨会上的高性能计算机体系结构,IEEE(二月),圣安东尼奥,288297。布洛赫,E. 1959 。“拉伸计算机工程设计,“1959会议东部联合计算机会议,4859。Bucholtz,W. 1962 。规划一个计算机系统:工程河段,麦格劳山,新约克。考尔德,B,D沃尔德,琼斯,D.琳赛,J.马丁,M.摩萨,B. Zorn 1997 。“基于机器学习的静态分支预测的证据,”追踪。程序。语言系统。18819:1,222。考尔德,B.,克雷门,和D M tullsen 1999 。“选择价值的预测,”过程。第二十六届国际研讨会上的计算机体系结构(ISCA),亚特兰大,六月。昌,P. P.,美国mahlke,W. Y.陈,新泽西州水,和W W Hwu 1991 。“影响:多个指令发出处理器体系结构的框架,应用。第十八国际计算机体系结构会议(5),266275。查尔斯沃思,A.E. 1981 。“科学的阵列处理方法:建筑AP-120B / FPS-164家庭设计的,“电脑14:9(九月),1827。陈,等。 1980 。“重叠和并行处理,在计算机体系,H.石,主编,科学研究所,芝加哥,427486。可莱索思,G. J. S. Z.,和紧急 1998 。“使用存储内存的依赖预测设置过程,”。第二十五届国际研讨会上的计算机体系结构(ISCA),六月,巴塞罗那,142153。克拉克,D. W. 1987 。“流水线和VAX 8800处理器的性能,应用。第二次会议在编程语言的建筑支持和操作系统,IEEE / ACM(三月),加州Palo Alto,177,173。克拉克,W. A. 1957 。“林肯TX-2计算机发展的过程,”。西部联合计算机会议(二月),无线电工程师协会,洛杉矶,143145。Colwell,R. P.,R. P.尼克斯,J. J.奥唐奈,D. B. Papworth呼吸,和P、K罗德曼 1987 。“一个跟踪调度的编译器的VLIW体系结构,应用。第二形的建筑编程语言和操作系统的支持,IEEE / ACM(3月),加州Palo Alto,180192。Colwell,R. P. R. Steck, 1995 。“0.6um BICMOS处理器的动态执行。”过程。国际固态电路研讨会,176177。cvetanovic,Z,和R. E.凯斯勒 2000 。“21264的性能分析通过康柏ES40系统,应用。第二十七届计算机体系结构(六月),温哥华,加拿大,192202。戴维森,E.美国 1971 。“流水线功能的发电机控制的设计,”过程。会议系统,网络,电脑,IEEE(一月),瓦兹特佩克,墨西哥,1921。戴维森,E. A. T. S.,托马斯,L. E.沙皮,和J. H.帕特尔 1975 。“有效控制流水线处理器,“compcon,IEEE(3月),三藩,181184。dehnert,J. C.,蔡政芳- T.许,和J.P.布拉特 1989 。“叠环上的支持Cydra 5,”过程。第三会议上支持的编程语言的建筑和操作系统(四月),IEEE / ACM,波士顿,2639。 Diep, T. A., C. Nelson, and J. P. Shen 1995 。“PowerPC的性能评价620微,”过程。计算机体系结构第二十二届(六月),圣玛格丽塔,意大利。Ditzel,罗斯福,H. R.麦克莱伦 1987 。“在脆微处理器分支折叠:减少分支延迟为零,”过程。第十四届计算机体系结构(六月),匹兹堡,27。道格拉斯,J. 2005 。“英特尔8XX系列和Paxville至强微处理器,”过程。热芯片,斯坦福大学,八月。Eden, A., and T. Mudge 1998 。“YAGs分支预测方案,应用。第三十一的年ACM / IEEE国际微体系结构,6980。埃德蒙森,J. H.,P. rubinfield,R.普雷斯顿,和V.拉贾戈帕兰 1995 。“超标量在21164的Alpha微处理器指令的执行,”IEEE微15:2,3343。埃利斯,J. R. 1986 。斗牛:VLIW架构,编译器麻省理工学院出版社,剑桥,质量。Emer, J. S.,和大卫克拉克 1984 。“在处理器性能的表征上780,”过程。计算机体系结构第十一届(六月),安阿伯,密歇根州,301310。Evers,M.,S. J.帕特尔,R. S. Chappell,和Y N. Patt 1998 。“相关分析和可预见性:什么使二级分支预测工作,”过程。第二十五年国际符号。公司。拱。(ISCA),5261。费舍尔,J. A. 1981 。“跟踪调度:一个全球的微码压缩技术,”IEEE Transactions。在电脑上30:7(七月),478490。费舍尔,J. A. 1983 。“超长指令字架构和eli-512,”过程。第十计算机体系结构会议(六月),斯德哥尔摩,140150。费舍尔,J.A.,J. R.埃利斯,J. C.鲁登伯格,和A.: 1984 。“并行处理:一个聪明的编译器和一个愚蠢的处理器,”过程。SIGPLAN会议编译(六月),加州Palo Alto,11-16。费舍尔,J.A.,and S.M. Freudenberger 1992 。“从过去预测的条件分支一个程序的运行过程,”。第五会议上支持规划建筑语言和操作系统,IEEE / ACM(十月),波士顿,8595。费舍尔,J. A.,B. R. RAU 1993 。杂志(一月),中国的超级计算机。原谅,J. W. 1957 。“林肯的TX - 2的输入输出系统,应用。西部联合计算机会议(二月),无线电工程师协会,洛杉矶,156160。福斯特,C,和E. M. RISEMAN 1972 。“代码来提高并行调度渗流和执行,IEEE反式”。在电脑c-21:12(十二月),14111415。加拉赫,医学博士,W. Y.陈,美国mahlke,J. C.吉伦哈尔,和ww Hwu 1994 。“动态内存消歧使用内存冲突的缓冲,”过程。第六国际会议的编程语言和操作系统的体系结构支持(十月),圣克拉拉,加利福尼亚州,183193。Gonz拉,J.,和A. Gonzlez 1998 。“数据的指令级并行性的限制投机,”过程。的vecpar会议,585598。海因里希,J. 1993 。MIPS R4000的用户手册,台北,Englewood峭壁,新泽西州欣顿,G,D塞奇,M.厄普顿,D.伯格斯,D.卡米,A.凯克,和P.鲁塞尔2001。“奔腾4处理器的微体系结构,“英特尔技术杂志,二月。平田,H,K,木村,S.长峰,Y.望月,A.西村,Y. nakase,T.西泽 1992 。“一个基本的处理器体系结构,同时指令在多线程程序发行,”。第十九届国际研讨会上的计算机建筑(5),136145。霍普金斯,M. 2000 。“在IA-64关键看:大量的资源,大量的ILP,但它能交货?“微处理器报告(二月)。Hsu, P. 1994 。“全要素生产率的微处理器设计,”IEEE微18:2(四月),2333。哈克,J.,et al.。2000。“引入IA-64体系结构“IEEE微,20:5,(九月十月,1223)。Hwu,W. W.,美国mahlke,W. Y.陈,P. P.昌,新泽西州水,R.A. Bringmann,R.O.韦莱,R. E.汉克,T.清原,例如哈布,J. G.霍尔姆,和D M Lavery1993。“超级块:VLIW和超标量编译的一种有效方法,”超级7:1,2(3月),229248。Hwu,W - M,和Y模式 1986 。“HPSM,一个高性能的限制的数据流结构具有最小的功能,应用。第十三届计算机体系结构(六月),东京,297307。IBM 1990 。“IBM RISC系统/ 6000处理器”(论文集),IBM J.研究与发展(一月)1。希门尼斯,D. A.,和C.林 2002 。“动态分支预测的神经网络方法,”追踪。计算机系统20:4,(十一月),369397。约翰逊,M. 1990 。超标量微处理器的设计,机械工业出版社,台北悬崖,新泽西州乔丹,H. F. 1983 。“Hep-A流水线MIMD性能测量计算机,应用。第十届国际研讨会上的计算机体系结构(六月),斯德哥尔摩,207212。Jouppi,氮磷,和D. W.壁 1989 。“可用的指令级并行性的超标量和超流水线处理器,”过程。第三会议架构支持编程语言和操作系统,IEEE / ACM(四月),波士顿,272282。Kaeli, D. R.,和P. G.艾玛 1991 。“运动目标分支历史表预测由于子程序返回的分支,应用。第十八届国际研讨会上的计算机体系结构(ISCA),多伦多,42,34。Keckler,S.W.,和WJ戴利 1992 。“处理器耦合:集成编译时并行运行时调度,”过程。第十九届国际研讨会上的计算机建筑(5),202213。凯勒,M. 1975 。“展望未来的处理器,“ACM计算调查7:4(十二月),177195。keltcher,C. N.,K. J.麦克格拉斯,艾哈迈德,和P.康威 2003 。“AMD Opteron处理器多处理器服务器处理器,”IEEE微23:2(3月四月),6676。凯斯勒,R. 1999 。“阿尔法21264微处理器,”IEEE微19:2(三月/四月)2436。基利安,E. 1991 。“MIPS R4000技术概述64位/ 100 MHz或破产,“热芯片三会议录(八月),斯坦福大学,1.61.19。Kogge,点 1981 。流水线计算机的体系结构,麦格劳山,纽约。库马尔,A. 1997 。“惠普pa-8000 RISC CPU,”IEEE微17:2(三月/四月)。Kunkel,苏联,和J. E.史密斯 1986 。“超级计算机优化流水线,”过程。第十三计算机体系结构会议(六月),东京,404414。Lam,M. 1988 。“软件流水:VLIW处理器的一个有效的调度技术,”SIGPLAN会议对编程语言的设计与实现,ACM(六月),亚特兰大,佐治亚州,318328。Lam,硕士,和R. P.威尔逊 1992 。“控制流的并行性的限制,”过程。第十九计算机体系结构会议(可能),黄金海岸,澳大利亚,4657。Laudon,J.,A. Gupta,和M.霍洛维茨 1994 。“交错:多线程技术针对多处理器工作站,应用。第六国际会议的建筑编程语言和操作系统的支持(十月),波士顿,308318。劳特巴赫,G.,和T.霍雷尔 1999 。“的UltraSPARC III:第三代64位设计的性能,”IEEE微19:3(5月/六月)。lipasti,M. H.,和J.P.沈 1996 。“超过极限值预测的数据流通过,”过程。第二十九届年度ACM / IEEE国际研讨会上的微体系结构(十二月)。lipasti,M.H.,C.B.威尔克森,大通沈 1996 。“价值性和负载值预测,”过程。在编程语言支持的第七届建筑和操作系统(十月),138147。Lo,J,L。巴罗佐,S.埃格斯,K. gharachorloo,李维,和S. Parekh 1998 。“分析数据库的负载性能的同时多线程处理器,”过程。第二十五届国际研讨会上的计算机体系结构(六月),3950。Lo,J.,S.埃格斯,J.紧急,李维,R.斯塔姆,D. tullsen 1997 。“转换threadlevel并行指令级并行性的同时多线程,”ACM计算机系统汇刊15:2(八月),322354。mahlke,S. A,W. Y.陈,W - M. Hwu,B. R. RAU,和硕士schlansker 1992 。“哨兵VLIW和超标量处理器调度,”过程。第五会议的建筑编程语言和操作系统的支持(十月),波士顿,IEEE / ACM,238247。mahlke,美国,R. E.汉克,J. E. McCormick,。八月,和W W Hwu 1995 。“完全和部分谓词执行的支持ILP处理器进行比较,”过程。第二十二届国际研讨会上的计算机体系结构(六月),圣玛格丽塔紫玛瑙,意大利,138149。马西斯,H. M.,A.E. mercias,J.D.麦卡尔平,R. J.艾克米尔,和S. R. Kunkel 2005 。“多线程(SMT)表征效率研究与IBM POWER5,”J.发展,49:4 / 5(七月/九月),555564。麦考密克,J,。A. Knies 2002 。“的SPEC CPU2000基准测试浅析在英特尔安腾2处理器,”过程。热门芯片会议,斯坦福大学,八月。麦克法林,S. 1993 。“合并分支预测,“美国的技术说明tn-36(六月),数字的西方研究实验室,加州帕洛阿尔托,麦克法林,S.A,和J.轩尼诗 1986 。“减少转移成本,”过程。第十三届学术研讨会计算机体系结构(六月),东京,396403。McNairy,C.,D.索尔蒂斯 2003 。“安腾2处理器的微体系结构,”IEEE微23:2(3月四月),4455。moshovos,A.,美国违约,T. N. Vijaykumar,G. S. sohi 1997 。“动态投机和同步的数据依赖关系,”过程。第二十四届国际研讨会上的计算机建筑(ISCA),六月,博尔德,科罗拉多州moshovos,A.,和G. S. sohi 1997 。“精简操作的存储器之间的通信通过数据依赖预测,”过程。第三十届国际研讨会上的微结构(micro-30),十二月,235245。Nicolau, A.,和J. A. Fisher 1984 。“有很长的平行度测量指令字架构,IEEE反式”。在电脑c-33:11(十一月),968976。潘,S - T,K,和J. T.拉密 1992 。“提高动态分支的准确性使用分支的相关预测,”过程。第五会议体系结构支持编程语言和操作系统,IEEE / ACM(十月),波士顿,7684。postiff,硕士,博士格林尼,G. S.泰森,T. N.马奇 1999 。“教学的限制在应用程序级并行SPEC95,“计算机体系结构的消息27:1(3月),3140。Ramamoorthy, C. V.,和H. F.李 1977 。“流水线结构,“ACM计算调查9:1(3月),61102。Rau, B. R。 1994 。“迭代模调度:软件流水算法循环过程,”。第二十七届国际研讨会上的微体系结构(十一月),圣若泽,加利福尼亚州,6374。Rau, B. R,C. D. R. L. Glaeser,和Picard 1982 。“水平高效的代码生成架构:编译技术和建筑的支持,”过程。第九届学术研讨会计算机体系结构(四月),131139。Rau, B. R。,D. W. L.日元,日元和W,R.A. Towle 1989 。“Cydra 5部门超级计算机:设计理念,决策,和取舍,”IEEE计算机22:1(一月),1234。RISEMAN,E. M.,C. C. Foster 1972 。“代码来提高并行调度渗流和执行,IEEE反式”。在电脑c-21:12(十二月),14111415。rymarczyk,J. 1982 。“流水线处理器的编码原则,应用。研讨会编程语言和操作系统的体系结构支持,IEEE /ACM(三月),加州Palo Alto,19,12。sharangpani,H,和K Arora 2000 。“安腾处理器微体系结构,”IEEE微,20:5(九月十月),2443。sinharoy,B,R,考拉,J. M.坦德勒,R. J.艾克米尔,和J. B.乔伊娜 2005 。“POWER5体系结构,”IBM J.研究与开发,49:4-5,505521。网站,R. 1979 。指令对CRAY-1计算机排序,技术报告78-cs-023(七月),计算机科学系,加州大学,旧金山的迭戈。skadron,K.,P. S. Ah

温馨提示

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

评论

0/150

提交评论