




已阅读5页,还剩106页未读, 继续免费阅读
(计算机科学与技术专业论文)动态vliw体系结构关键技术研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国防科学技术大学研究生院学位论文 摘要 人们对微处理器性能的追求永无止尽。目前工艺技术的飞速发展,为设计提 供了广阔的空间,如何有效利用这上亿个晶体管,开发更快、更高效的微处理器, 是当前计算机体系结构设计研究面临的极为重要的课题之一。 获得高度的并行性,仍然是开发高性能计算机系统的基本途径,而可以获得 的并行效率,也越来越与程序的内在特性相关联。根据不同应用的特点,程序中 的并行可以分为不同的级别。指令级并行( i n s t r u c t i o nl e v e lp a r a l l e l i s m ,i l p ) 作为 其中粒度最小的并行,是不同级别并行实现的基础。i l p 可以通过软件或硬件技 术开发,面向i l p 开发的体系结构只有合理划分软硬件在i l p 开发过程中承担的 工作,并且软、硬件紧密配合,才能取得理想的性能和复杂度。动态v l i w ( v e r y l o n gi n s t r u c t i o nw o r d ,超长指令字) 结构兼具软硬件1 l p 开发技术的优点,是具 有良好性能潜力和发展前景的计算机体系结构技术方向之一。 本文在深入分析开发i l p 的软硬件技术优缺点的基础上,以降低硬件设计的 复杂度为目标,划分了它们在动态v l l w 结构中承担的i l p 开发工作,明确了 需要解决的关键技术。本文针对这些关键技术展开了深入研究,主要取得了以下 一些研究成果: 1 提出了一种v l l w 动态指令调度模型d l v ( d e t e r m i n i s t i c l a t e n c y s c h e d u l e f o rv l i w ) 。d l v 模型以硬件机制了解每条指令的准确延迟这一事实为依据动态 调度指令流出,使用再定序缓冲实现精确异常处理,并保证乱序执行和前瞻执行 的正确。d l v 模型能够大大降低指令流出机制的硬件复杂度,并有效解决v l l w 结构的目标代码兼容问题。 2 高质量的访存优化技术能够缓解日益严重的处理器存储器性能差距,提 高微处理器系统的性能。本文分剐研究了指令访问和数据访问技术,提出了基于 控制流的混合指令预取方法,并探讨了在动态v l i w 结构中实现l o a d 前瞻所需 的体系结构和编译支持。 3 谓词的引入给传统编译优化技术带来了新的问题,如果不能准确分析谓 词关系,编译优化只能获得保守的结果。本文提出了一个基于路径信息的谓词分 析技术,能够避免现有技术中重构控制流信息这一复杂过程,高效精确地分析谓 词之间的关系。 4 扩大基本块体积是编译技术开发更多i l p 的必由之路,但是其实现复杂 度也非常高。在谓词执行体系结构的支持下,本文将h y p e r b l o c k 结构从单入口 扩展为多入口,并提出了相应的优化技术。 国防科学技术大学研究生院学位论文 5 计算机体系结构的新理论、新方法的正确性和有效性验证,是体系结构 技术的重要组成部分。本文以m i p s p , 2 0 0 0 为基础,设计了一个原型验证系统, 以检验上述技术的正确性和有效性。该系统实现了d l v 模型以及其它编译技术 所需的体系结构支持。 以上研究成果都以降低硬件设计的复杂度为前提,充分发挥各种技术自身的 长处,并互相弥补其它技术的不足。实际测试结果表明,以上基于动态v l i w 结 构的研究成果,能够在保持较低硬件复杂度的基础上,开发并获得更多的i l p , 提高处理器的并行性。 关键词:动态v l i w 体系结构。动态调度,指令预取,l 0 a d 前瞻,谓词执行 扩展超块 国防科学技术大学研究生院学位论文 a b s t r a c t h u m a n b e i n g sh a v ea l w a y sp u r s u e d t h eh i g h e s tp e r f o r m a n c eo f m i c r o p r o c e s s o r s t h ef a s td e v e l o p m e n to fs e m i c o n d u c t o ra n dm a n u f a c t u r et e c h n i q u e sp r o v i d e saw i d e s p a c ef o rd e s i g n e r s h o w t ot a k ef u l la d v a n t a g eo fs om a n yt r a n s i s t o r st oi m p l e m e n t f a s t e ra n dm o r ee f f i c i e n tm i c r o p r o c e s s o r si so n eo f t h em o s t i m p o r t a n tt a s k so f c u r r e n t c o m p u t e ra r c h i t e c t u r er e s e a r c h w o r k s e x p l o i t i n g a sm u c h p a r a l l e l i s ma sp o s s i b l ei s s t i l lt h eb a s et oi m p l e m e n th i g h p e r f o r m a n c ec o m p u t e rs y s t e m s b u th o w m u c hp a r a l l e l i s mc a l lb er e a l i z e dd e p e n d s i n c r e a s i n g l yo n t h ei n s i d ec h a r a c t e r i s t i co f a p p l i c a t i o n s a saf i n e - g r a i n e dp a r a l l e l i s m , i l p ( i n s t r u c t i o nl e v e lp a r a l l e l i s m ) i sf u n d a m e n t a lt oi m p l e m e n tm e d i a l g r a i n e da n d c o a r s e g r a i n e dp a r a l l e l i s m i l pc a nb ee x p l o i t e db ye i t h e rc o m p i l e r so rh a r d w a r e m e c h a n i s m o n l y w i t hr e a s o n a b l ed i v i s i o no ft h e i rw o r k si ni l po r i e n t e d m i c r o a r c h i t e c t u r e sc a nt h e yg e ts a t i s f i e dp e r f o r m a n c ew i t hm o d e r a t ec o m p l e x i t y c o m b i n i n g t h em e r i t so fs o f t w a r ea n dh a r d w a r et e c h n i q u e st o g e t h e r , d y n a m i cv l i w ( v e r yl o n gi n s t r u c t i o nw o r d ) a r c h i t e c t u r ei s o n eo fc u r r e n tc o m p u t e ra r c h i t e c t u r e r e s e a r c h i n g t r e n d sw h i c hh a v e p o t e n t i a l l yh i g hp e r f o r m a n c e t oe x p l o i tm o r ei l pi nd y n a m i cv l i wm i c r o p r o c e s s o r sw i t hl o wh a r d w a r e c o m p l e x i t y , t h i sp a p e rd i v i d e st h ew o r ko fc o m p i l e r sa n dh a r d w a r e sa f t e rs t u d y i n g t h e i rm e r i t sa n ds h o r t c o m i n g si nd e t a i la n dp r o p o s e st h ek e yi s s u e st ob er e s o l v e d t h i sp a p e rh a sf o l l o w i n gc o n t r i b u t i o n s : 1 t h i sp a p e rp r o p o s e sad y n a m i c a l l ys c h e d u l i n gv l i wm e c h a n i s m d 【 ( d e t e r m i n i s t i cl a n t e n c ys c h e d u l ef o rv l i w ) i ts c h e d u l e sa l l i n s t r u c t i o n st oi s s u e a c c o r d i n g t ot h e i rd e t e r m i n i s t i cl a t e n c y r e o r d e rb u f f e ri se m p l o y e di nd l vt oh a n d l e e x c e p t i o n sa n di n t e r r u p t i o n s d l v c a l lr e d u c et h ec o m p l e x i t yo f i s s u em e c h a n i s m 2 e f f e c t i v em e m o r ya c c e s st e c h n i q u e sc a nr e l e a s et h eg a p sb e t w e e np r o c e s s o r s a n dm e m o r ys y s t e m ss ot h a ti m p r o v i n gt h ep e r f o r m a n c e t h i sp a p e rp u t sf o r w a r d h y b r i di n s t r u c t i o np r e f e t c h i n gb a s e do nc o n t r o lf l o wa n d d i s c u s s e sh o wt op e r f o r m l o a ds p e c u l a t i o ni nd y n a m i cv u w a r c h i t e c t u r e s 3 p r e d i c a t e de x e c u t i o na l s ob r i n g sn e w c h a l l e n g e s t ot r a d i t i o n a lc o m p i l e r s t h e y c a no n l yg e tc o n s e r v a t i v eo p t i m i z a t i o n sw i t h o u tp r e c i s ep r e d i c a t er e l a t i o na n a l y s i s t h i s p a p e rp r o p o s e s an e wm e t h o dt op e r f o r mp r e d i c a t ea n a l y s i sb a s e do np a t h i n f o r m a t i o np r e c i s e l ya n de f f i c i e n t l y i tc a l la l s oa v o i dt h er e c o n s t r u c t i o no f c o n t r o l 国防科学技术大学研究生院学位论文 f l o wi n f o r m a t i o ni nc u r r e n tp r e d i c a t e a n a l y s i sm e t h o d s 4 t oe x p l o i tm o r ei l p , c o m p i l e r sn e e dt oc o m b i n es e v e r a lb a s i cb l o c k si n t oa l a r g e ro n e b u ti t a l s oi n c r e a s e st h ec o m p l e x i t yo fc o m p i l e r s w i t ht h es u p p o ao f p r e d i c a t e de x e c u t i o n ,t h i sp a p e re x t e n d sh y p e r b l o c kf r o ms i n g l ee n t r yt om u l t i p l e e n t r i e sa n d p r o p o s e sc o r r e s p o n d i n go p t i m i z a t i o nt e c h n i q u e s 5 v e r i f i c a t i n gt h ec o r r e c t n e s sa n de f f e c t i v i t yo fn e wt e c h n i q u e si so n eo ft h e m o s ti m p o r t a n ts t a g e si n c o m p u t e ra r c h i t e c t u r e r e s e a r c h t i l i s p a p e rd e s i g n sa n d i m p l e m e n t sap r o t o t y p es y s t e mb a s e do nm i p sr 2 0 0 0 t oc h e c kt h ec o r r e c t n e s sa n d e f f e c t i v i t yo fa b o v et e c h n i q u e s t h ep r o t o t y p es y s t e mp r o v i d e sd l v m a c h n i s ma n d o t h e ra r c h i t e c t u r es u p p o r t sf o r c o m p i l e ro p t i m i z a t i o nt e c h n i q u e s a l lt e c h n i q u e sa b o v ea i ma te x p l o i t i n gm o r ei l pw i t hl o wh a r d w a r ec o m p l e x i t y a n dt h e ya r ec o m b i n e di nd y n a m i cv l i wm i c r o a r c h i t e c t u r e se f f e c t i v e l y t h e yc a l l f e t c hu pm e1 i m i t so fe a c ho t h e r s e x p e r i m e n t a lr e s u l t si n d i c a t et h a tw i t ht h e s e t e c h n i q u e s d y n a m i cv l i wm i c r o p r o c e s s o r sc a ne x p l o i tm o r ei l pa n di m p r o v ei t s p e r f o r m a n c e w i t hl o w c o m p l e x i t y k e y w o r d s :d y n a m i c a lv l i wa r c h i t e c t u r e d y n a m i c a r ys c h e d u l i n g , i n s t r u c t i o n p r e f e c t h ,l o a ds p e c u l a t i o n ,p r e d i c a t e de x e c u t i o n ,e x t e n t e dh y p e r b l o c k 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 学位论文题目:塑查! 竺望- ! :堡垫兰:燮! 堕兰墨塞些 学位论文作者签名彤立 嘲一神年弘煳 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权 国防科学技术大学可以保留并向国家有关部门或机构迭交论文的复印件和电子 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目:塑查型! j ! ! :堡! 塑墨墨蝌豳兰垄墨型 学位论文作者签名 作者指导教师签名 月鹕帕 月执日 洳 加 簇 国防科学技术大学研究生院学位论文 图索引 图1 1 超标量结构示意图6 图1 ,2 1 9 8 0 年以来存储器和c p u 性能随时间而提高的情况( 以1 9 8 0 年时的性能 为基准) 8 图2 1 面向i l p 开发的体系结构分类1 4 图2 2 v l i w 结构示意图1 5 图2 t 3 锁定关联限制指令流出1 6 图2 4 动态编译结构示意图1 7 图2 5 动态v l i w 结构示意图1 8 图3 1 确定延迟指令调度模型2 5 图3 2 d l v 模型示意图2 7 图3 3 d l v 前瞻调度实例2 9 图3 4 d l v 模型性能测试结果3 1 图4 ,1 控制流图实例3 5 图4 2 非顺序预取流程图3 6 图4 3 编译调度将数据前瞻转换为控制前瞻4 2 图5 1 谓词代码实例4 4 图5 2 引入谓词给编译优化带来了一些新问题4 5 图5 3 带标记的控制流图4 9 图5 4 域编码构造算法5 0 图5 5 查询接口函数实现算法。5 4 图5 6 基于路径信息的谓词分析技术能够提高代码质量5 6 图5 7 基于路径信息的谓词分析对编译时间的影响很小5 6 图6 1 循环剥落5 8 图6 ,2 h y p e r b l o c k 实例6 0 图6 3 最小生成树6 3 图6 4 由图6 2 ( a ) 生成的e h b 6 6 图6 5 c h r 优化代码实例。6 7 图6 6 c h r 优化结果6 8 图6 7 编译前瞻调度时需要进行寄存器重命名6 9 图6 8 最大路径数不同时e h b 的性能7 0 图6 9 e h b 与h y p e r b l o c k 性能比较7 1 第v 页 国防科学技术大学研究生院学位论文 图6 1 0 d l v 模型性能测试结果 图7 1 原型系统的指令格式 图8 1 原型系统体系结构框图 图8 2 原型系统流水核框图 图8 3 存储子系统框图 图8 4 存储器的读时序 图8 5 存储器接口模块图 图8 6 读指令操作流程 图8 7 指令预取流程 图8 8 数据访问流程 图8 , 9 硬件仿真平台基本结构 n弭船侉跎斟辨黔跖盯眇 国舫科学技术大学研究生院学位论文 表索引 表1 1 半导体工艺水平发展预测 表1 2 理想模型下的i l p 表4 1 预取指令的语法和语义 表4 2 基准程序 表4 3 模拟测试结果 表4 4 几种预取策略的性能比较 表5 1 i m p a c te p i c 结构中谓词定义指令赋值规则 表5 2 图5 - 3 中各结点的域编码 表53 接口函数的时间复杂度 表6 1 各基本块的路径编码 表7 1 原型系统指令集的寻址方式 表7 2 原型系统指令的位编码 表7 3 特殊指令f u n c 字段的编码 表7 4 b c o n d ( 寄存器条件跳转) 指令的位编码 表8 1 功能部件的延时 表8 :2 指令c a c h e 参数 表8 3 数据c a c h e 参数 4 一3 6 3 8 一3 9 3 9 4 7 5 0 5 5 6 4 7 3 7 6 7 6 7 6 8 0 8 2 8 2 国防科学技术大学研究生院学位论文 第1 章绪论 针对动态v l l w 体系结构,如何通过软硬件技术协同开发指令级并行 ( i n s t r u c t i o nl e v e lp a r a l l e l i s m ,i l p ) ,在保持较低硬件复杂度的前提下提高微处理 器性能,是本文的主要研究内容。 1 1 提高微处理器性能的基本因素 微处理器被誉为2 0 世纪最伟大的发明之一。经过三十余年的发展,微处理 器的性能飞速提高,已经成功应用于人们日常生活的各个领域,产生了良好的经 济和社会效益。尽管微处理器的应用日趋多样化,不同应用领域的具体需求也各 不相同,但追求高性能却始终是各个领域微处理器设计的共同目标,人们对微处 理器性能的追求永无止尽。 提高半导体工艺技术和改进体系结构设计是提高微处理器性能的两条根本 途径。在下面的微处理器性能公式i l 】中, 执行时间= 指令数c p i 时钟周期= 指令p 。d u ( i p c 时钟频率) i p c ( i n s t r u c t i o n s p e rc y c l e ) 表示每个时钟周期执行的指令数;c p l ( c y c l e sp e r i n s t r u c t i o n ) 表示执行一条指令所需的时钟周期数。显然有: i p c = l ,c p i 可以看出,指令数、i p c 和时钟频率是影响微处理器性能的三个基本因素。 工艺水平的进步和发展能够提高时钟频率,而改进体系结构设计( 包括采用编译 优化技术) 则能够减少指令数和提高i p c 。当然,高质量的体系结构设计能够降 低硬件实现的复杂度,也有助于提高时钟频率。 提高微处理器性能最简单直接的方法是通过改进电路设计和加工工艺提高 时钟频率。这种方法不会改变原有的微处理器设计,也不会引起代码兼容问题, 风险小且收效快,摩尔定律【1 说明了这条途径使微处理器性能提升的速度:每一 年半性能提高一倍。目前以微电子学为基础的集成电路制造工艺仍然没有达到制 造能力的极限,在未来一段时间内工艺技术的进步将会继续提高微处理器的时钟 频率和集成度。表1 1 是美国半导体工艺联合会( s e m i c o n d u c t o ri n d u s t r y a s s o c i a t i o n ) 1 9 9 8 年预测的到2 0 1 0 年半导体工艺水平的发展趋势 2 1 。 目前技术的发展快于人们的预测。2 0 0 2 年,i n t e l 已经开始在0 0 9 p m 的工艺 线上量产p e n t i u m 4 处理器,布线达到9 层,工作频率达到2 8 g h z ;多家芯片代 工厂已经宣布开始o 0 9 p m 工艺线的量产;国内的中芯国际也已开始基于0 1 8 “m 第1 页 国防科学技术大学研究生院学位论文 工艺芯片的量产。 表1 1 半导体工艺水平发展预测 存储器微处理器 线宽功耗面积晶体管面积晶体管布线 年度主频l ,o ( 肛m ) ( w ) ( r a m 2 )0 3 i l l i o n )( r a m z )( - f f7 f c m 2 ) 层 1 9 9 7o 2 57 02 8 00 2 5 63 0 03 77 5 061 4 5 0 1 9 9 9o 1 89 04 0 0 1 3 4 06 21 2 5 06 72 0 0 0 2 0 0 1o 1 51 1 04 4 53 8 5 1 01 5 0 072 4 0 0 2 0 0 3o 1 31 3 05 6 044 3 01 82 1 0 0 73 0 0 0 j 2 0 0 6o 1 01 6 07 9 01 65 2 03 93 5 0 07 _ 84 0 0 0 2 0 0 90 0 71 7 01 1 2 06 46 2 08 4 6 0 0 08 95 4 0 0 2 0 1 2o 0 51 7 51 5 8 0 2 5 67 5 01 8 01 0 0 0 097 3 0 0 但加工工艺的进步也带来一些负面影响,例如随着集成度的提高,芯片内走 线延迟的影响越来越大、芯片单位面积的功耗不断增加等,最严重的莫过于c p u 与存储器之间的性能差距进一步增大。另外,工艺水平的提高使得芯片的容量更 大,可容纳的器件更多,如何改进微处理器体系结构设计以充分利用这些丰富的 硬件资源也是一个重大挑战。 与提高时钟频率对应的方法是通过改进体系结构设计从应用中开发并实现 更多的并行,以提高i p c 并减少执行的指令数【 3 - 8 o 先进的工艺水平为微处理 器设计提供了丰富的硬件资源,而体系结构设计则能够充分挖掘这些硬件资源的 性能潜力并将其转换为实际性能。尽管改进工艺水平,在同一芯片内集成更多的 功能部件甚至更多的处理器也有可能提高i p c ,但只有应用自身拥有足够多的并 行并且这些并行能够由具体的体系结构实现时,i p c 才能真正得以提高。编译优 化技术能够在一定程度上减少指令数,但究竟能够取得怎样的效果,依赖于具体 的体系结构设计,尤其是指令集设计。 从i n t e l4 0 0 4 诞生至今已经有三十几年,微处理器的发展历程大致可以分为 三个阶段。第一阶段,工艺水平对提高微处理器的性能价格比发挥了主导作用。 自2 0 世纪7 0 年代以来,工艺水平的发展使原来需要一个或多个印制电路板、甚 至一个或多个机柜才能实现的微处理器功能,可以集成到一个器件中,大大提高 了微处理器的性能,降低了微处理器的成本。第二个阶段,工艺水平和体系结构 共同推动微处理器进入了前所未有的黄金时代。在这个阶段开始的时候,微处理 器的发展受到半导体技术的限制,促使体系结构研究者们致力于降低体系结构的 复杂度,减少消耗的晶体管数量,从而推动了以r i s c 技术为主要代表的体系结 圆骑科学技术大学研究皇院学位论文 构的发展。伴随着r i s c 技术的发展,晶体管也变得越来越便宜。与此同时,市 场需求氇发懋了改交,要求羹有效地楚理多媒谇信怠。予是,额酌翡能被不黼建 加入刹r i s c 结构中,体系结构的设计者所关注的焦点也逐渐集中在如何提蔺i 性 能上,导致徽楚理嚣蒋片复杂度越来越离。遮一霹期,互艺技零翡遴步帮傣系结 构的创新形成的合力使微处理器进入了一个成熟的发展时期。第三阶段,体系结 筏将发挥绝对缆势豹佟建。工艺技术靛未来笈震,将缱线宽越来越窄、萃令蕊冀 上可粲成的晶体管数越来越多。这一方面给微处理器设计者提供了更多的资源来 实鬟受毫装耱懿芯片,霹鞋褒攀芯片主鑫造嚣复杂帮趸灵溪黪系统;雯一方鬻篷 带来了功耗不断增加的巨大压力,使芯片设计过程变得越来越复杂。在这种情况 下,褰性能懿设计曩拣和低功糕豹设诗魏衷将推动体系缝毒奄设计进入一个更大豹 创新空间。 1 2 1 指令级并行 1 2 研究背景 为了提高i p c ,体系结构技术必须有效挖掘并利用程序中的并行。根据粒度 不阉,应用中的并行可以分为以下几类,相应的开发技术也肖很大麓异: 细粒度并行,即指令缀并行( i l p ) ,以指令为基本调度单位。i l p 是应用程序 所匿有的特镊,现代微处理嚣基本上郝以开发i l p 乍为其性能提升的主要手段之 一【9 j 。开发i l p 主要是通过在一个时钟周期内并行执行多条指令实现。i l p 汗发 可以在两个阶段进行:指令调度阶段和指令流出阶段,每个阶段既可以用硬件技 术动态实现也可以糯软件技术静态实现。熊螫静i l p 体系结构镪括:趱标量 ( s u p e r s c a l a r ) 结构、超长指令字( v e r yl o n g i n s t r u c t i o nw o r d ,v l i w ) 缎构和显式并 行蹈构( e x p l i c i t l y p a r a l l e li n s t r u c t i o nc o m p u t i n g ,e p i c ) 。 中粒度并行,以线程( t h r e a d ) 作为基本调度单位,线程体可以怒路径( t r a c e , 有辩氇称为淙迹) 、循环诲躐函数傣。线翟被努布至多令璜坜并簿执幸亍,这弱相 互隐藏长延迟操作,提高并行度的效果。开发线程级并行( t h r e a dl e v e l p a r a l l e l i s m ,t l p ) 静簇鍪体系缮梅毽旗擎芯片多跫理器岱证g l ec h i p m u l f i p r o c e s s o r , s c m p ) 、同步多线程( s i m u l t a n e o u sm u l t i t h r e a d i n g ) 及多标蠹结构( m u l t i s c a l a r ) 等【斌珏t 。t l p 与i l p 结会褥 常紧密,嚣饕多线纛俸系终擒基本上裁采躅按照 “t l p + i l p ”混合并行模式开发t l p 。 粳粒覆磐嚣,港王务( t a s k ) d e 恣基本调浚攀位。粳粒发势霉邋嚣在多热理撬 系统( m u l t i p r o c e s s o r s ) 、集群( c l u s t e r ) 或者网络( n e t w o r k ) 中发,每个处理机执行 一令经务,处理援纛阙逯遗曩连网终透售实现目步酾数据一致性。多处理搬蓉统 第,蕊 国防科学技术人学研究生院学位论文 主要研究规模和性能的可扩展性,其目标是使含有n 个处理器的多机系统的性 能尽可能接近单处理器系统性能的n 倍。影响多机系统性能的因素主要包括单 个处理器的性能、互连网络以及计算模型( 任务划分策略) 。开发粗粒度并行的典 型体系结构包括m p p ( m a s s i v e l yp a r a l l e lp r o c e s s i n g ) 、s m p ( s y m m e t r i cm u l t i p r o c e s s i n g ) 以及集群【4 】等。 i l p 作为高性能微处理器开发的种基础技术,是目前提高微处理器性能的 重要手段之一。 可以通过理想的处理器模型研究程序中的i l p 潜力,常用的理想处理器模型 有两个: o r a c l e 模型:假定完全正确的分支预测,分支开销为0 ,分支不影响代 码的正确执行: b y p a s s i n g 模型:程序沿着分支的两条路径同时执行,即旁路了分支, 分支开销也是0 。 对理想处理器模型的研究表明,程序中存在大量的i l p i l 2 ,1 3 , 1 4 1 ,如表1 2 所 刁i 。 表1 2 理想模型下的i i _ p 研究b e n c h m a r k 类型平均i p c备注 r i s e m a n通用程序2 5 6 5 n i c o l a u科学计算1 2 1 3vl i w 模型 k u m a r科学计算5 0 0 3 5 0 0f o r t r a n 程序 b u t l e rs p e c r f l a r k s7 3 1 7 5 7 8 2 a u s t i ns p e c m a r k s6 6 3 7 6 8 6 8 5 3 5 0 l a ms p e c m a r k s1 5 8 2 6包括一些非s p e c 代码 微处理器最终能够开发多少i l p 受到三个条件的制约:应用中固有的i l p , 编译器优化阶段可开发的i l p ,以及微处理器硬件最终能够实现的i l p 。程序执 行时获得的i l p 不大于这三者的最小值。 目前,i l p 开发的主要限制集中在三个方面: 开发时机:i l p 可以在不同阶段由软件或硬件技术开发,这些技术各有 所长。如何将它们有机地结合为一个整体,充分发挥各自的优点,避免 重复开发是目前研究的一个热点。 开发范围:分支指令的存在严重限制了i l p 开发的范围,无论软硬件技 术,都主要在由分支指令分割的一个个比较小的指令窗口中开发i l p 。 如何解决程序中大量存在由分支指令引起的控制相关,扩大i l p 开发范 国防科学技术大学研究生院学位论文 围,也是目前研究的重点之一。 实现机制:随着v l s i 工艺的不断发展,走线延迟的影响越来越大,过 于复杂的控制逻辑无法高效地实现,反而会限制时钟频率的提高,影响 微处理器性能,增加系统功耗。如何控制硬件实现的复杂度也是一个需 要权衡的十分重要的问题。 1 2 2 当前体系结构的技术水平 纵观微处理器体系结构的发展,在半导体技术、市场需求和应用的交互作用 下,一直面临着四个方面的挑战:提高性能,降低功耗,简化硬件设计,并保持 与主流体系结构( 如x 8 6 ) 的= 进制兼容。传统的c t s c ( 复杂指令集计算机) 体系结 构很难同时满足上述要求,八十年代先后提出了精简指令集计算机( r l s c ) 和 v l l w 体系结构,试图解决这些问题,但都没有达到理想的效果。 传统上,通用微处理器的工作负载以非数值、不规则标量应用为主( 这也是 目前事务处理和w e b 服务类服务器的工作负载特征) ,实现高性能的方法主要是 开发指令级并行。以i n t e lx 8 6 为代表的c i s c 结构以超流水结构为提高性能的主 要手段,它将指令流水线划分成更简单的流水级以提高时钟频率。目前p e n t i u m 4 的流水线级数对定点运算已达2 0 级,浮点运算达到2 9 级,同时处于执行状态的 指令达到1 2 6 条。r i s c 芯片则采用超标量结构为提高处理器性能的主要手段, 在内部由硬件通过动态调度实现多个操作的并行执行。为进一步提高性能,c i s c 与r i s c 微处理器在发展过程中都从对方借鉴了很多东西,二者在体系结构上的 界限已经越来越模糊。目前,i u s c 微处理器性能的进一步提高已经不再是通过 体系结构创新得到的,而是用提高复杂度为代价换来的。这种方法的效果已经不 再显著并且会带来很多问题,超标量结构就是一个非常典型的实例。 图1 1 是超标量结构的基本执行模型,其特点是每个周期流出多条指令和乱 序执行( o u t o f - o r d e re x e c u t i o n ) 。该结构维护一个指令窗口,指令窗1 2 1 使用寄存器 重命名机制消除指令间的伪相关,并通过复杂的硬件控制机制检测当前该窗口中 的无关指令并将其放入流出窗口,流出窗口则按照指令流出策略将这些指令分派 到各个功能单元执行。超标量结构可以比较高效地使用硬件技术开发i l p ,在以 下几个方面能够有效地简化编译器设计并可以取得比编译优化更好的优化效率: 硬件机制在运行时检测相关,能够有效处理一些编译时不能发现的相 关,如涉及到访存的相关; 寄存器重命名机制使用了大量的虚拟寄存器,远远多于实际的物理寄存 器,也可以消除一些编译技术不能解决的相关。 但超标量技术的进一步发展非常困难,预计纯粹超标量结构的性能潜力将在 第5 页 国防科学技术大学研究生院学位论文 下一代微处理器中消耗殆尽,开发超过8 流出的超标量体系结构已经失去实际意 义”、”1 ”j 。值得注意的是,超标量技术无法开发更多的i l p 并非受到应用中的 i l p 限制,而是受限于自身的缺陷。相反的,1 1 节中给出统计结果表明,无论 数值计算应用还是非数值计算应用,i l p 的潜力都非常大。 囡 动态调度:动态流出 io p 4 卜 、厂 jo p ,卜_、j ( lo p :i 流出窗口 o p 。i -j 指令窗口 图1 1 超标量结构示意图 超标量结构过于依赖硬件机制开发i l p ,它只能调度指令窗口内的指令,范 围相当有限。为了开发更多的i l p ,必须扩大指令窗口使其能够容纳更多的指令, 而指令窗口的复杂度随窗口大小成平方级增长。 尽管现在的多数超标量微处理器将基于编译器的静态调度和基于硬件的动 态调度机制结合在一起,共同决定可同时并行流出多少条指令,但其设计和实现 仍然需要极为大量的硬件资源。首先,功能单元数目增加使得所需的存储器带宽 和寄存器端口数也大大增加,必将增加存储系统和寄存器文件设计的复杂度。其 次,为开发更多的i l p 必须扩大指令窗口,而指令窗口的复杂度,特别是相关性 判断电路,随窗口大小增加成平方级增长。另外,随着指令流出宽度的增加,寄 存器旁路逻辑的实现复杂度也大大增加,也是设计高性能超标量微处理器的主要 障碍【博】。以上所有方法带来的一个共同的技术问题,就是连线的复杂性大幅度 提高。硬件复杂度增加不仅使提高时钟频率更加困难,而且给设计的改进工作也 增加了难度。 总的说来,没能很好地突破1 2 1 节中的三个限制( 开发时机、开发范围和实 现机制) 是超标量结构无法进一步发展的主要原因。目前很多i l p 体系结构针对 超标量结构不足进行了改进,其中比较具有代表性的包括动态v l l w 结构、e p i c 结构等,这些结构强调结合使用软硬件技术协同开发i l p 扬长避短,互相弥补 国防科学技术大学研究生院学位论文 对方的不足,表现出良好的性能潜力和发展前景。 1 2 3 当前i l p 体系结构的发展趋势 当前,随着工艺水平的进一步发展和应用需求的不断变化,微处理器体系结 构的发展正面临着新的挑战和创新机遇。为了进一步开发应用中的指令级并行, 有效地利用集成度提高带来的数以亿计的晶体管资源,提高微处理器的性能,研 究者们针对体系结构设计进行了广泛深入地研究,这些工作基本上可以分为两个 方面: 1 进一步发展i l p 技术,硬件变得更复杂,但性能提高却不再显著 这些研究沿袭传统的指令级并行技术来加速单线程应用,目标在于进一步挖 掘单个应用内在的i l p ,这方面的代表有m i c h i g a n 大学提出的a d v a n c e d s u p e r s c a l a r 处理器,c a r n e g i em e l l o n 大学提出的s u p e r s p e c u l a t i v e 处理器, w i s c o n s i n - m a d i s o n 大学提出的t r a c e 处理器。它们的共同思想是组织更宽的超标 量,采用更多的功能部件,多级c a c h e 和数据、控制预测,以开发更多的i l p 。 在这类研究中提出的t r a c ec a c h e 已经成功地应用在i n t e lp e n t i u m 4 处理器中。这 类方法存在的问题主要是会导致芯片的复杂度过高,使得一个完整的通用芯片的 设计、验证和测试成本变得令人难以接受。 2 在i l p 开发过程中,用软件的复杂性换取硬件的简单性,有一定潜在的 性能优势 第二类研
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天平考试题及答案
- 2025年公需课《人工智能赋能制造业高质量发展》试题(附答案)
- 2025年高校教师岗前培训高等教育心理学知识竞赛考试题库(附答案)
- 2025年高级焊工题库及答案
- 2025年高端制造业专业考试试题及答案
- 《数字政府统一基础运维规范 第6部分:政务云服务实施》编制说明
- 健康干预培训试题及答案
- 《教材发行管理办法》
- 2025年频率测量仪器项目发展计划
- 经营流程与管理办法
- 2025中国大唐集团科学技术研究总院有限公司系统单位领军人才招聘笔试参考题库附带答案详解
- 教学能力比赛现场决赛30道答辩问题要点
- 2025-2030中国卫星通信行业发展分析及投资价值预测研究报告
- 法拍房委托服务协议书范本
- 码头项目事故案例
- 建设单位与总包单位实名制管理协议
- 妇幼信息管理制度
- 事故隐患内部报告奖励制度
- 初一英语摸底试题及答案
- 七年级体育 运动损伤的预防和处理说课稿
- 2025年度人工智能辅助医疗合作协议范本模板4篇
评论
0/150
提交评论