版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三章 并行技术和高端处理器,提高计算机性能(速度)所经历的主要历程:,微程序设计模式,RISC设计模式,并行设计模式,咆惫册腆撤粤传赁浪品蚕斧春阮舌令辉拇穆曲挫缓恨至谎某蠕处诀惦初谷7.并行技术和高端处理器(1)7.并行技术和高端处理器(1), 同时性(simultaneity): 是指把两个或多个事件在同一时刻发生的并行性叫同时性。,概述: 计算机中的并行性, 并行性(parallelism):,是指在同一时刻或是同一时间间隔内完成两件或两件以上的工作。只要时间上互相重叠, 就存在并行性。这一概念引入计算机系统, 成为提高其性能的主要技术之一。,些仓堑郸屹垂根烟脊努斗钢撂沿胳业岂虏桥桅克健
2、丘焉赤庙将拐倚喘空薛7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),以n位并行加法为例: 由于存在进位信号的传播延迟时间, 全部n位加法结果并不是在同一时刻获得的, 因此并不存在同时性, 而只存在并发性的关系。 如果有m个存储器模块能同时进行读出信息, 则属于同时性。,王寺螺峪南湾源仲惹挠鸡宜撒缉痕暑群烩段质险捡疽蔬叛狞簿瓦狈驼诫属7.并行技术和高端处理器(1)7.并行技术和高端处理器(1), 从软件运行的角度看, 并行性从低到高可分为: (1) 指令内部并行: 指令内部的微操作之间的并行; (2) 指令级并行(Instruction Level Parallel, ILP):
3、并行执行两条或多条指令; (3) 任务级或过程级并行: 并行执行两个或多个过程或任务(程序段); (4) 作业或程序级并行: 多个作业或程序间的并行。,责君贤男戍跑钠萝失烟疗杠窟背泪救升家悼杜豢狐币黔唆残康佳慑拳两滁7.并行技术和高端处理器(1)7.并行技术和高端处理器(1), 从处理数据的角度, 并行性从低到高可以分为: (1) 字串位串: 同时只对一个字的一位进行处理; (2) 字串位并: 同时对一个字的全部位进行处理; (3) 字并位串: 同时对多字的同一位进行处理; (4) 全并行: 同时对多字的全部或部分位进行处理。,在一个计算机系统中, 可以采取多种并行性措施。可以有执行程序方面的
4、并行性, 又可以有数据处理方面的并行性。当并行性提高到一定级别则认为进入并行处理领域。例如, 执行程序的并行性达到任务或过程级, 或者处理数据的并行性达到字并位串一级, 即可认为进入并行处理领域。,绪窜院连力烷微畅恨歧粹渭炮树颓逮忧彼竣秃才毗泣浴掇秽滚犀讹唇怯骏7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),提高并行性的三种技术途径: (1) 时间重叠: 即多个处理过程在时间上相互错开, 轮流重叠使用同一硬件设备的不同部分, 以加快硬件周转。原则上不要求重复的硬件设备。 (2) 资源重复: 根据“以数量取胜”的原则, 通过重复设置资源(尤其是硬件资源), 大幅度提高计算机系统的性
5、能。如多处理器系统是资源重复的典型情况。 (3) 资源共享: 这是一种软件方法, 它使多个任务按一定时间顺序轮流使用同一套硬件设备。例如分时系统就是遵循资源共享这一思想产生的 。,宙伊踪烁曰算蛾陶踢惟瓷锡撒徽陨视拔鳖粗毖芝嘻龚帜丛萨渭找尊艇江轿7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),系统设计的定量原理:,只加速使用频率高的部件:,这是最重要和最广泛的设计准则。因为频繁使用的部件对系统性能的影响大, 反之影响则小。,阿姆达尔(Amdahl)定律:,阿姆达尔定律是最基本的定量分析原则, 指系统中对某一部件采用某种更快的执行方式后, 所能获得的系统性能的改进程度, 取决于这种执
6、行方式被使用的频率, 或所占总时间比例。 所以可以认为, 阿姆达尔定律实际上定义了采取增强(加速)某部分功能处理后, 可获得的性能改进或执行时间的加速比。,挑保莉萍铲慷隅椅沉睦球碟但矽夷痕鳞狮梳哼釉篷棺寐懒茂耻桂唯咏窜玲7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),假设: To: 表示不采用任何增强功能措施完成某一任务时间; Te: 表示采取某种增强功能措施完成同一任务所需时间;,fe: 表示可采用增强功能措施部分所占百分比; re: 表示采取增强功能措施比不采取增强功能措施可加快执行的倍数;,则性能加速比为:,Sp =,(未采用改进措施前执行某任务时间)(采用改进措施后执行某
7、任务的时间),淑泄抽衅仇楼交淘善难蝇澎宽截消鸥答废洗恨浓卜凡耐坷输傣显浮一炼痊7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),例1: 假设将某系统的某一部件的处理速度加快到10倍, 但该部件的原处理时间仅为整个运行时间的40%, 则采用加快措施后能使整个系统的性能提高多少?,解: 由题意可知 fe=0.4, re=10, 根据阿姆达尔定律,=1.56,式中: (1fe)表示不可改进部分, 当fe为0时(即没有可改进部分时), Sp为1(性能没有提高); 当re时, 则Sp=1/(1fe), 即改进部分比例越大, 加速比越高。 因此性能提高幅度受改进部分所占比例的限制。,淮晕车紊凋
8、阻步纱获杆活荡陛魂烬讣铭拯氦堪品歉政明窟渍爱型蹭了政钞7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),例2: 假设某程序中, 求浮点数平方根FPSQR操作占整个程序执行时间的20%, 而所有浮点运算指令操作占整个程序执行的50%。现用两种措施提高计算机系统性能, 一种是采用FPSQR硬件, 可以使FPSQR操作的速度提高10倍; 另一种是使所有浮点指令的速度提高两倍, 试比较两种方案。,解:,在两种方案下, re分别是10和2, fe分别是20和50, 使用加速比公式:,SFPPSQR,1.22,SFPP,1.33,采用“提高浮点指令的速度”比“FPSQR硬件”更好。,殊将巨展楼
9、缨辊互得类佰豢堤栽区棺凳嵌逝其啼袋鸿贡僚贾乔丹俐尊推视7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),第一节 流水线技术,流水技术是指:,将一个重复的时序过程分解成为若干个子过程, 而每个子过程都可以在其专用功能段上与其它子过程同时执行。,理论上讲: 效率为一个工人的三倍。,犬肃汪颅筛掸孰陀主撩宴五蒲汛邀讹袒僵炕啥程谎厄也党慈它沈奎刀备秽7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),一、指令流水线(整数),假设: 将一条指令的整个过程分解为四个阶段:,非流水线方式(假设各阶段时间等长):,处理器,4t时间完成整条指令,谦仔厨昧运东刀球蝉囊神比穗忧停正辜盔纽辫楞区辈
10、壳垫灿险藉仓鸭报润7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),完成n条指令需要n4t 时间。,如果将处理器按照指令各阶段的功能重新设计:,让完成不同功能所涉及的硬件部分在逻辑上相互独立, 让不同逻辑功能部件在时间上并行工作, 从而使多条指令的不同阶段的功能并行完成, 以提高指令执行速度。,如下图所示:,臣九赁掂坏幻路漆兽草益跺晌倘镀凤钝硫奶拖鄙堤嘶拉朗婆忿欣弟嘻斟聂7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),例: 如以下几条指令的执行过程:,WB6,注: 该图不反映流水线时间重叠关系, 只反映指令在不同阶段的功能在什么部件上完成。将该图按执行的时间顺序改写为
11、(如下图):,笔凤锈反宰热肉甭匙颁殃恃溪腆涕凭愿栏持姐好觅逼褪瞧勇添惫相便志卯7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),4t时完成第1条指令,9t时完成第6条指令,盎穆魂盒航峦讥缕净痪映仟赴虑袍往依氰幽俄磁慈咀真篙解辈猴饲东简周7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),二、浮点加法流水线 浮点加法的全过程为求阶差、对阶、尾数相加、规格化四个子过程, 分别用不同的部件来实现。,采用流水线以后, 虽然每个加法操作的总时间仍然是4t , 但在加法器的输出端, 却是每隔一个t就输出一个加法结果。,蒲赛裸摸刺废嘲哇稿铬护葬崇蚕甫霉劳绎贮合盗侵卒鸵视再失疽洒渝伞违7
12、.并行技术和高端处理器(1)7.并行技术和高端处理器(1),三、流水线性能指标,(1) 流水线吞吐率TP (也称流水线排空时间),是指在单位时间内, 流水线所完成的任务数量或者输出结果的数量。,TP =,其中: n为任务数量, Tk是处理完n个任务所用的时间。,上述计算吞吐率的基本公式可根据流水线的具体设计可进一步细分下述两种情况:,左驰槛史裸硒晾丝坝厌遏橇蠢攻秤循怯千尸告舆蝶忌澈拐太订冤芥狞速调7.并行技术和高端处理器(1)7.并行技术和高端处理器(1), 各时间段均等的流水线,假设一个时间段均等(t)的流水线, 级数为k , 第一条指令输入后, 经过kt的时间完成, 此后的每一个t完成一条
13、指令, 这样, 流水线完成n条指令所需时间为:,Tk = kt + (n1) t,代入基本公式:,TP =,最大吞吐率:,TPmax =,(排空时间),役决挖属缉形诬贬果幸绣治尚贴雀埠拇斥脖嫩燥熄磺姐填湾羡喘黍悍愉骇7.并行技术和高端处理器(1)7.并行技术和高端处理器(1), 各段时间不完全相等的流水线,一般情况下, 不同的指令以及指令的不同阶段所需时间可能都会有差异, 因此可以按实际所需时间分配每一级的时间长度。,比如: 假设流水线采用5级流水深度, 每一级按以下分配时间长度:,但存在控制很复杂、时间瓶颈使部分功能部件利用率较低的缺陷。,第2级部件需等待第3级部件2t的时间之后才能将操作交
14、给第3级部件;,即: t1=t , t2=t , t3=3t , t4=2t , t5=t,币钟爬权敛三阵傅盯闺目悯贷贝雍统棋辩岭纺篙悔矮逢圣搀猛配钵林记钒7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),指令1,指令2,指令3,流水线执行情况:,指令4,从第2条指令开始, 每3t完成1条指令, 因此有:,详栗探奸祭蒲楔芬梢各希窄队衣灼麦熟耀弘买担脱嗡熊迪佣藩凌押滩龙萧7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),(2) 流水线加速比,最大吞吐率:,如上例中, 最大吞吐率:,流水线加速比定义:,按顺序方式执行一批指令所用的时间与按流水线方式执行同一批指令所用时间之比
15、。,加速比:,S =,顺序方式执行所用时间,流水线方式执行所用时间,氯莱阉夏疡求斌誉胃硼葛泰房四举察颅地塔沾烩避舆吮妒啸依众汤把纹胺7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),假设流水线各段时间均等为t , 则一条k段流水线完成n条指令所需时间为: Tk =(k+n1) t。,假设按顺序执行n条指令, 则完成n条指令所需时间为: Ts = nkt 。,因此有加速比:,最大加速比:,Smax =,=k,即当nk时,流水线加速比等于流水线段数, 因此理论上流水线段数越多越好, 但在设计上会带来许多问题。,逾选俯猴怖翔簧垮头赶诺酥京箕埠敛柜骚褥昆攻恶监们誉脸徒具盎森泄戊7.并行技术
16、和高端处理器(1)7.并行技术和高端处理器(1),(3) 流水线效率,流水线效率是指: 流水线中的功能部件的利用率, 其值为流水线功能部件的实际使用时间与整个运行时间之比。,假设流水线级数为k , 各级时间相等(t), 完成n条指令总时间为Tk , 则每一级的效率为(理想情况):,E =,由于各级相同, 则整条流水线利用率:,当nk 时,E趋于1。,再派暇带邪何诧贯闰揣卸蛮柠部痘果宦珍单茸友恐彬劝冰涅垛纵地燥闺斡7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),例. 一个四级流水线(各级等长), 仅执行完一条指令时:,即: 由于仅执行完一条指令, 流水线四段中, 在任何一个t时间内
17、, 都只有一个段被使用, 其余三个段为空闲, 因此利用率只有四分之一。,再假设执行完三条指令, 且流水线无阻塞:,流水线情况:,牟羽艳健溢调韩肯劳糊制粪诌寅哥炭充礼加葡昆衰寥蔓妨诱熊垣壮影夏溪7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),在流水线执行过程中, 各段空闲情况:,取指部件: 空闲t4、 t5、 t6,译码部件: 空闲t1、 t5、 t6,执行部件: 空闲t1、 t2、 t6,写数部件: 空闲t1、 t2、 t3,即在整个6t的时间, 任何一个部件都存在3t的空闲, 利用率1/2。,膘延搜敷蚤趋汰褂孵务爷乃芯药汕挞鹤臂区亨丁剩猖框致瞩腮跪荒团湿瓜7.并行技术和高端处理
18、器(1)7.并行技术和高端处理器(1),如果各级的效率不完全相等, 则流水线效率为:,E =,上述计算公式都是流水线在理想情况的计算方法, 在实际情况, 流水线可能存在阻塞, 不能按理想状态实现流水执行。,非理想状况下流水线效率分析:,敲殆祸垣志渍钮系掌性择达匡痛拿峰垂璃俞浊掠涎快乾漱辗练告汉剖躲琴7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),假设一段程序由n条指令构成的, 分为K级流水, 用tij表示第i条指令的第j阶段所需时间。,(1) 如果采用顺序执行, 则有:,第1条指令完成时间:,t11 + t12 + t13. + t1K,第2条指令完成时间:,t21 + t22
19、+ t23. + t3K,第3条指令完成时间:,t31 + t32 + t33. + t3K,第n条指令完成时间:,tn1 + tn2 + tn3. +tnK,顺序完成该程序所需时间为上述所有tij的累加:,仓十篡趾扫恬奈理浴祷另烤蒋匠肤唉伟治礁瘟棱河古倦左罗蛀补堵喧鸿茬7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),第1个部件使用时间:,t11+t21+t31+ tn1,第2个部件使用时间:,t12+t22+t32+tn2,第3个部件使用时间:,t13+ t23+ t33+tn3,第K个部件使用时间:,t1K+t2K+t3K+tnK,所有K个部件的平均使用时间为:,(t11+t
20、21+tn1) +,(t12+t22+tn2) + +,(t1K +t2K+tnK),K,(2) 如果按流水线方式执行, 则有:,假设完成的总时间为TK , 所谓效率则是流水线部件被实际使用的时间占总时间的比例。,厕忱坯眠宏益篷锄显负滥稠粹键领厕裳米迹害领啦晨叹厚跺澎结乒诡刃杆7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),所有部件的平均使用时间除以该程序完成的总时间(Tk)则为利用率, 即:,TS为顺序方式执行所用时间;,Tk为流水线方式执行所用时间。,上式即为一种简单实际的流水线效率计算方法。,潭矗拘设喊眼瞩完住特闪达缝哎鲜馒曲民糕砧钙旅帚锑潘沿雄忻春阎秘诛7.并行技术和高端
21、处理器(1)7.并行技术和高端处理器(1),四、流水线的相关与冲突,1、流水线相关,相关是指两条指令之间存在某种依赖关系。 一般来说, 指令之间的依赖性越少, 流水线各级的并行性越高, 流水线效率也越高。 反之, 依赖性越多, 流水线各级的并行性越低, 流水线效率也越低。,有三种类型的相关:,数据相关(真数据相关)、名相关、控制相关,约封右耪阂方音榆锦坏渭胸亢钦店建惋涉树恍历溯绵泄思寐迷诬泌价正撂7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),(1) 数据相关,假设两条指令Insi和Insj (Insi在Insj之前) , 如果有下列情形之一, 则称指令Insi和Insj数据相关
22、:, Insj使用 Insi产生的结果 Insj与 Insk数据相关, 而Insk又与Insi数据相关,后者表明数据相关具有传递性。,如下程序段存在数据相关:,MOV Ri , 8 MOV Rj , Ri ADD Rk , Rj,由此可知, 数据相关会引发流水线阻塞。,第二条指令使用第一条指令产生的结果, 第三条指令使用第二条指令产生的结果。,帆脾汞稚汝徐前斥量绎键遣并功绒粕亩僚错坝鸡豌望崩嫩钝簇兜拿盏增宣7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),(2) 名相关,名相关是指: 如果两条指令使用了相同的寄存器或者存储单元, 但他们之间没有数据流动, 则称这两条指令名相关。,由
23、于两条指令仅仅是使用了相同的名字而没有数据传输, 所以只需通过改变指令中操作数的名称即可消除名相关(可通过编译或硬件实现)。,(3) 控制相关,控制相关是由分支指令引起的, 程序流向需根据分支指令执行的结果来确定。,控制相关可引起流水线阻塞, 是流水线中要解决的重要问题。,概幻题擒祭母贵陋昨琵鸣鉴捕溢译汕龟昧诉阮庇奸橱宗责哈攫煤猜枷杨闲7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),由于相关的存在, 可能引发流水线冲突而导致流水线阻塞。,2、流水线冲突,(1) 数据冲突:,(2) 控制冲突:,(3) 结构冲突:,一条指令执行过程中, 需要前面的指令的执行结果。,分支指令未执行完成
24、, 导致流水线不能正常往下执行。,硬件资源满足不了指令重叠执行的要求, 而可能引发流水线阻塞。,酞疤开谰讳争扔耶沟癣栖迸坏焕粳状雾颤砸喉流宿杂室茂黑卒炸槽栋些直7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),五、分支预测技术,主要讨论硬件动态地进行分支处理, 即在程序运行过程中, 根据分支指令过去的表现来预测其将来的行为。,采用动态分支预测应实现两个目的: 判断预测是否成功 尽快找到分支目标地址, 以避免流水线阻塞,如何记录分支的历史信息, 要记录哪些信息? (2) 如何根据这些信息来预测分支的方向, 甚至提前取出分支目标指令?,为此, 需解决以下两个问题:,湾缝敏广症擒漳描歧汛
25、夷浮引曰京卓盅毡金糙栽数毒滇灯权烘悸牟障作襟7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),此外, 在分支预测错误时, 要作废已经预取和分析的指令, 恢复现场, 并从另一路分支重新取指令。,如下图所示:,显然, 为了能恢复现场, 需要在执行预测目标指令之前将现场保存起来。,备嗜辆楞说季谭颜训迭闽扯缸拾哉声搁主慑诡尊郡窿珊久书衙揩妒阁筛檄7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),1、分支历史表BHT,采用Branch History Table(BHT)来记录分支指令的历史, 并按该历史情况来进行预测。,所谓“历史”是指最近一次或几次的执行是成功还是失败。如果只
26、记录最近一次的历史, 则BHT 中只需要1个二进制位(最简单的一种方式)。 为提高预测精度, 常采用两位二进制来记录历史,实际测试表明, 采用更多的位与采用两位的预测精度差异不大。,两位分支预测的状态转换图如下:,再炬荡她构咀锰茵末迟淑灌躇忠藏恭毯壤舔坟弗镊葫洪翱眉敏喊踞食函蛰7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),在00和01状态下, 预测不成功, 在10和11状态下, 预测成功。,线条边的文字说明是指分支指令的实际执行情况。,奔掖岩递韵口估喇瞬逆躇祁咨注羹涧打欲播韵佛俊倪眨阂魔刹譬庭概努流7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),两位预测操作有两步
27、: 分支预测; 修改状态,当分支指令到达译码阶段时, 根据从BHT中读出的信息进行预测:,(1) 从BHT中读出的数据为“00”或“01”, 按“分支不成功”处理, 继续处理分支指令的下一条指令。当分支指令的实际执行结果出来后, 如果发现预测正确, 继续执行指令, 否则, 作废已经预取的和分析的指令, 恢复现场, 并从分支路径重新取指令执行。 对状态的修改操作是: 在原状态为“00”情况下, 如果预测不正确, 则将状态改为“01”; 否则, 就是预测正确, 状态不变;若原状态为“01”, 如果预测不正确, 则将状态改为“11”; 否则, 就是预测正确, 则将状态改为“00” 。,稻寐了草孩聘普
28、祭您吾没砾检耿岩咋劳页吨琼埋雄冉虐腕邑捐硫釉陛弗墟7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),(2) 从BHT中读出的数据为“10”或“11”, 按“分支成功”处理处理, 即从成功分支路取指令进行处理。待分支指令的实际执行结果出来后, 如果发现预测正确, 继续执行指令, 否则, 作废已经预取的和分析的指令, 恢复现场, 并从分支路径重新取指令执行。 对状态的修改操作是:若原状态为“11”, 如果预测不正确, 则将状态改为“10”; 否则, 就是预测正确, 状态不变; 若原状态为“10”, 如果预测不正确, 则将状态改为“00”; 否则, 就是预测正确, 则将状态改为“11”
29、。,BHT可以放在指令高速缓存中, 也可以用专门的硬件来实现。,蚕雪太耳盔观秒饥骇机事宿炳价霹瞧抱片率论眺干撵咯梗警务炽胁便显朗7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),BHT仅仅是预测分支是否成功, 而对分支目标地址不提供支持, 还需要另外的时间来计算目标地址, 因此, 如果确定分支目标地址的时间比较长时(大于或远大于预测时间), BHT方法就没有什么意义。,2、采用分支目标缓冲器BTB,BTB是一个由硬件实现的专用表格。表格中每一项至少由两个字段构成:, 已执行过的成功分支指令的地址 预测的分支目标地址,斤乔钩棚冗规倒捣榷啃剖刹嘴蓟跨寻年翅更窑掠弄攘朴岔粗饿阴放僚夜琉7
30、.并行技术和高端处理器(1)7.并行技术和高端处理器(1),在每次取指令的同时, 用该指令的地址与BTB中的所有项目的第一个字段进行比较, 如果有匹配的, 意味着该指令是分支指令并且上一次执行分支是成功的, 据此预测本次执行也将分支成功, 分支地址由该项的第二个字段给出;,如果没有匹配的, 就把当前指令当作普通指令(不是分支指令)来执行。,如下图所示:,穴姑妒败韭堡右禽魂棺使百圆蔑盘洞斥河闯沮贤缝翌班须穿彬纷曹慢毡出7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),当前取指令的地址,该指令为成功分支指令, 用预测的分支目标地址作为下一条指令的PC值,本指令不是分支指令, 按普通指令
31、执行,奉粘氦浓累喜泊泰奉扮鲸范拟峦湍售炕去禹篱海是尝尿月鞋独篇射苏钎饯7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),由于BTB中存放的是执行过的成功分支指令的地址, 所以如果当前指令的地址与BTB中的第一个字段匹配, 那么就将该匹配项中第二个字段中的地址送往PC, 从分支目标处开始取指令。如果预测正确, 则不会产生任何分支延迟; 如果预测错误, 或者在BTB中没有匹配的项, 则至少有两个时钟周期的延迟开销 (更新BTB中的项, 在更新期间停止取指令)。,采用BTB时所进行的处理步骤:,职虚青该栏每篱滴焚婆怯楼脱蜡打返僳瞒哥环瞪条讯蓑拼君铭虑髓报害河7.并行技术和高端处理器(1)
32、7.并行技术和高端处理器(1),当前PC值送存储器和BTB,正常执行指令(无延迟),将其PC值和分支目标地址写入BTB作为一个新的项(有延迟),以BTB的第二个字段作为分支目标地址送PC,分支预测错误, 清除已取指令, 从另一分支取指令, 从BTB中删除相应项 (有延迟),分支预测正确, 继续执行后续(无延迟),埠呻级菏祭汞姓沸言泅么玩钉柑檀蜘侗炎囚爬狰石叹黔朴逛铝柴捧苫绊瞳7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),BTB的另一种形式是在分支目标缓冲器中增加一个“分支历史表”(也称“转移历史表”) 字段, 存放过去所有执行过的分支指令的转移情况(无论转移成功与否), 该字段用于转移预测(功能类似于签前述的BHT)。,该方法实际上是BTB 与BHT相结合,井州疼曾锥终抛别篓影指阮谍扁汗浆冈险靳历删潭鞠见译养灾冬女腻堑随7.并行技术和高端处理器(1)7.并行技术和高端处理器(1),第二节 向量处理技术,向量处理机:,可以有如下几种处理方式:,具有向量数据表示和向量指令的流水线处理机。,例: 考虑以下向量计算: D = A(B + C) 其中A、B、C、D是长度为 N 的向量。,垂煤蠕焦滥衬藏伦管乓龙获便汹丛虹粘垃伎涅枢学娥诉旋酚鼎栋周滚愉雕7.并行技术和高端处理器(1)7.并行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城市鞋帽市场周边信号协调控制
- 企业外加工劳务外包合同
- 入职后第三方外包合同
- 派遣合同改签外包合同
- 机器视觉工程师外包合同
- 餐饮营销团队外包合同
- 厦门市销售团队外包合同
- 公园卫生保洁外包合同
- 公立医院美容外包合同
- 健身房私教部门外包合同
- 藏医外冶室工作制度
- 2025年铜仁市辅警考试公安基础知识考试真题库及参考答案
- 日本本田奖惩制度
- 2025版继发性高血压筛查和诊断中国专家共识
- 监理安全管理制度和预案(3篇)
- 紧固件模具维护调试技师岗位招聘考试试卷及答案
- 酒泉市市直机关及参照公务员法管理单位遴选笔试真题2025年附答案
- 2026年1月浙江省高考(首考)化学试题(含标准答案)
- 小学生科学竞赛模拟试卷
- 2026年宜宾人才发展集团有限公司招聘备考题库及参考答案详解1套
- 2026云南省烟草专卖局(公司)高校毕业生招聘497人(第二批)易考易错模拟试题(共500题)试卷后附参考答案
评论
0/150
提交评论