multicore众核manycore我们在这片上多核处理器-杨全胜.ppt

multicore众核manycore我们在这片上多核处理器-杨全胜.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
multicore众核manycore我们在这片上多核处理器-杨全胜

此页举例没有宏融合的情况 5条语句需要2个周期完成 * 此页举例使用宏融合的情况 5条语句只需要1个周期完成,因为cmp指令和jae指令进行了宏融合 TEST 可以融合所有的条件跳转指令. CMP 只能融合下列条件跳转指令(Core中) JA (and its equivalent, JNBE) JAE (equivalent JNB) JE (JZ) JNA (JBE) JNAE (JC or JB) JNE (JNZ) In this case, CMP will be fused with JAE while not with JGE * Sta是获取地址,std是存数据,他们是mov edx, [mem1]指令译码出来的两个微代码,由于它们基本上都是配对出现,所以将它们融合成一个微代码st 这两个微代码是有数据相关的,所以它们需要两个时钟周期分别进同一个流水线,但融合成一个微代码后只需要一次进流水线了 * * 内存消歧技术可以使需要用的数据被提前装载,以便能快速使用。一旦预测失败,内存消歧技术能检测到地址冲突,并重新装载数据,重新执行该Load操作,不过这种情况出现的概率很小。 举例远近是由在该存储体上读取数据的带宽和延迟大小作为衡量标准的。 * 果Cache不是共享的,如果两个核使用同一个数据则需要在前端总线中进行传递,增加了前端总线的负担,而共享cache的连个核不存在这个问题 * * 指令队列中的循环检测器(LCP)能避免将循环体中的指令重复解码,提高了指令流的执行带宽。 * * 多核结构 SUN公司 的UltraSPARC T2 8个CPU核 每个核能同时运行8个线程 更大的存储器容量 512GB以上 * 多核结构 IBM的Cell 1 PPE (Power Processor Element) 8 SPE (Synergistic Processor Element) * 多核结构 Tilera公司的Tile64 64核 RISC 19.2W 所有的核通过MESH链接 一个核500Gb/s, 所有核 32Tb/s. 每个核都能执行操作系统 * 多核结构 Intel的Larrabee 多个按序x86 CPU核被扩充为更宽的向量处理器 在片上的保持一致性的2级Cache 多核结构 Intel的Sandy Bridge * * 多核概述 内容 为什么我们需要多核? 什么是多核? 多核结构 Intel? Dual-core介绍 多核带来的挑战 操作系统对多核处理器的支持方法 Intel? Dual-core介绍 * * Intel? Dual-core介绍 新技术 宽位动态执行技术 高级数字媒体增强技术 智能内存访问技术 智能功效管理 * Intel? Dual-core介绍 宽位动态执行 从取指开始 4+条指令/时钟 比其他的x86处理器提高33% 指令转换成微操作 * Intel? Dual-core介绍 宽位动态执行 4路寄存器重命名 4路微代码 4路重排序 更深的乱序存储缓冲 * Intel? Dual-core介绍 宽位动态执行 交付性能 = 频率 * 每时钟指令数 (IPC) Power = Cdynamic* V * V * Frequency 每条指令转换成更少的微操作允许在动态电容下降的情况下,提高IPC,因为更少的位就意味着更少的触发器。 * Intel? Dual-core介绍 宏融合 将常见的x86指令对组合到一个单独的微代码中。 CMP或TEST + 条件转移 (Jcc) 为宏融合而增强的算术逻辑单元 单个发射 - 效率 单周期执行 - 性能 举例 for (unsigned int i=0; i100000; i++) { … } Instruction Queue add ecx, 1 dec0 Cycle 2 Cycle 1 mov [mem1], ecx mov [mem1], ecx mov eax, [mem1] add ecx, 1 cmp eax, [mem2] dec1 dec2 dec3 jge label mov eax, [mem1] cmp eax, [mem2] jge label dec0 Intel? Dual-core介绍 宏融合 将常见的x86指令对组合到一个单独的微代码中。 CMP或TEST + 条件转移 (Jcc) 为宏融合而增强的算术逻辑单元 单个发射 - 效率 单周期执行 - 性能 举例 * for (unsigned int i=0; i100000; i++) { … } Instruction Queue add ecx, 1 dec0 Cycle 1 mov [mem1], ecx mov [

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档