- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3、数据推测 控制推测技术能够解决分支和取数操作中的控制相关,但在指令优化过程中还可能存在数据相关。 与控制推测技术的解决办法类似,由编译器将一条取数指令分解为两条指令: ① add r5=4,r0; //r5=4+r0 ② st4 [r7]=r5;; //将r5的值存入r7指向的内存单元 ③ ld4 r2=[r8];; //以r8的内容为地址访存,加载寄存器r2 ④ add r6=r2,r5;; //r6=r2+r5 其中第四条指令需要第三条指令取数的结果。为了减少访存延迟,编译器可以将第三条指令提前到第一条指令之前。但这样做的风险是,假如当前寄存器 r8 的值和 r7 的值相等,则意味着第三条取数指令和第二条存数指令访问的是同一个内存单元。而把取数指令提前到存数指令之前将使取数指令得到存数之前的值,而不是程序原意要使用的 存数指令执行之后的 取值。 安腾处理机采用数据推测技术解决上述问题,由编译器将一条取数指令分解为两条指令: (1)高级取数指令(load.a),可以提前到适当位置先期执行取数操作,但该指令执行时除了从给定的内存单元取数据之外,还将被访问的内存单元的地址登记到一个名为高级取数地址表(ALAT)的硬件数据结构中。该地址表中保存了所有已经被取数指令访问过、且未被存数指令修改过的内存单元的地址、相应的寄存器以及存取数据的字节数。安腾的所有存数指令在执行时均会根据存数的目标内存地址检索该地址表,如果检索到地址匹配,则从地址表中删除该地址。 (2)取数检查指令(load.c),安排在原来的取数指令位置,也即真正使用数据之前的位置。该指令执行时将检索高级取数地址表,以便确认在高级取数指令执行后、取数检查指令执行前是否有任何指令修改了高级取数指令访问过的内存单元:如果检索到匹配项,则说明没有任何指令修改过高级取数指令访问过的内存单元,取数检查指令不再执行其他操作;如果检索不成功,则取数检查指令重新执行一次取数操作,以便加载到必威体育精装版的数据。 ① add r5=4,r0; ② st4 [r7]=r5;; //将r5的值存入r7指向的内存单元 ③ ld4 r2=[r8];; //以r8的内容为地址访存,加载寄存器r2 ④ add r6=r2,r5;; //r6=r2+r5 安腾的编译器进行优化: ① ld4.a r2=[r8];; //高级取数,以r8的内容为地址访存 ② add r5=4,r0; ③ st4 [r7]=r5;; //将r5的值存入r7指向的内存单元 ④ ld4.c r2=[r8];; //检查以r8为指针的寄存器r2加载操作 ⑤ add r6=r2,r5;; //r6=r2+r5 概括而言,双核安腾处理机的优势主要体现在以下几点。 1、并行处理技术 2、显式并行指令计算技术 3、超线程技术 4、三级大容量高速缓冲存储器 5、硬件辅助虚拟化技术 6、高速缓存安全技术 10.5.1 双核安腾处理机的基本特性 10.5. 双核安腾处理机的组成 超线程技术 在一颗处理机芯片内设计多个逻辑上的处理机内核,这些逻辑上的内核共享处理机内的整数运算单元、浮点运算单元和二级cache等资源,但却被模拟成多个物理内核芯片。从软件的角度看,系统中好像存在多个独立的处理机内核,因而可以让单个处理机在线程级实现并行计算,支持多线程的操作系统和应用软件。但核心硬件资源实际上只有一套,故当多个线程同时访问某一个资源时,其中一个线程要暂时停止并让出资源,直到这些资源闲置后才能继续执行。 虚拟化技术 所谓虚拟化,是指用单个处理机模拟多个处理机并行工作,而每个处理机都可以被看作一个独立的工作环境,从而在一个平台上同时运行多个操作系统,并且每一个操作系统中都有多个程序运行。应用程序在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。 双核英特尔安腾处理机采用硬件辅助的英特尔虚拟化(Intel VT)技术提高虚拟化效率和操作系统的兼容性,可支持未经修改的操作系统和应用在专门为它们设计的环境中运行,从而简化了硬件调用。因此,双核英特尔安腾处理机是数据密集型虚拟化应用的理想平台。 1、指令执行单元 安腾处理机的8级流水线中,前两级负责与取指令相关的操作,称为机器前端,包含两级分支预测单元、两个转换后援缓冲器(TLB)和一个零延迟的分支预测逻辑部件。每个周期,前端可以将两个指令束包含的最多6条指令送入指令缓冲器中。指令缓冲器是一个包含8个表项的队列,用于支持前端独立于后端
文档评论(0)