网站大量收购闲置独家精品文档,联系QQ:2885784924

代码优化和性能调节.ppt

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

CPU主要由运算器、控制器和寄存器组3个部分组成 CPU的任务:取指令并完成指令所规定的操作 * 不均匀流水线吞吐率的影响因素:深度、任务数、瓶颈段时间。 * 注意:非流水和流水的比! 不要弄反,是个大于1的数! * * 时空图上的对应关系:忙的时间和总时间的比。 算出来的是所有设备的平均效率。 * 关系的含义较难说清。 * * * 通过时间和排空时间的比例越大,吞吐率越远离最大值,效率越远离1。 * * * * 时空图上计算效率的方法。 * * 流水线一词的来源 Josiah Wedgwood 1769制陶 * * * 解释幻灯片上命中比和失效比。 询问以下问题: 如果数据请求了 78 次发现在高速缓存中有56次而其他次数都是从主存中装入的。缓存未命中率是多少? 答案:未命中率是78-56/78 = 0.28 * 3 4 3 * * * * * * * 询问学生关于使用的不同类型的基准。 解释不同类型的基准。 解释单流基准测量计算机执行一组程序所花的时间。 * * * * * * 注意: 人(相当于CPU硬件能完成的功能)、 设备(相当于CPU硬件)、 产品(相当于指令)的关系 * 增加了人,没有增加设备; 这里剥离了“人”的因素是为了示例设备子部件之间并行工作! * 另外: 洗衣店一方还重视设备利用率,流水方式下,它跟吞吐率相关。 * * 注意: 洗衣店一方重视吞吐率 同学一方注意等待时间 * 另外: 洗衣店一方还重视设备利用率,流水方式下,它跟吞吐率相关。 * 从洗衣店到指令流水线 非常直观,简直一摸一样1 * 注意我们的定义 是对执行方式的一种描述。 时空图的作用 * 对流水线性质的挖掘。 最后两条最重要。 流水也是一种并行, 但和“并发”不一样,是处于“不同阶段”任务的并行。 * 注意多功能流水线的硬件额外代价。 * 多功能流水线才有这样的划分。 * 流水粒度。 * 带反馈的:复杂流水线,调度问题与反馈模式非常相关。 * 乱序流水线是高性能微处理器中常用的技术 * 注意纵坐标。 * 这条流水线可重用的段不多。 * 在一种以上功能并存在流水线中的时候,硬件要做哪些控制? * 如果应用每次的执行反馈模式都不同,调度会更复杂。 * * 更好更直观的例子 经常使用同学举例 * 注意: 洗衣店一方重视吞吐率 同学一方注意等待时间 * 每个指标都有最大和实际两种度量。 * 不均匀流水线反映出流水线瓶颈问题。 * 均匀流水线吞吐率的影响因素:深度、任务数。 测量处理器性能的某些标准度量有 退出的指令 每个已执行指令的时钟周期数 (CPI) 浮点指令百分比 测量处理器性能 (续) ? CPI 是时钟周期数与退出的指令数之比。 当指令的执行完成时,处理器将不再需要这些指令。 因此,当处理器抛弃这些指令时,我们就称这些指令已执行完毕。 ? 浮点指令百分比 这个度量测量退出的浮点指令百分比。 CPI 用于衡量处理器的内部资源利用率。较高值表示资源利用率较低。 ? 处理器性能依赖于从主存中读、写数据有多快。 内存速度大大低于处理器速度。 处理器速度与内存速度之间的差别影响了应用性能。 尽管计算机有很好处理能力但处理器速度对应用性能的影响不是主要的。 解决办法是使处理器与内存的速度的不匹配减少到最低。 为优化应用性能重要的是理解计算机的内存层次结构和内存不同部件的性能。 检测内存规范 了解内存层次结构 下图显示计算机系统中的内存层次结构。 ? 寄存器通过提供对计算期间计算的中间值的快速访问来加快指令执行速度。 ? 这是最底层的缓存内存,它快而小。 ? 它容量要大些但速度比L1高速缓存慢。 ? 它比缓存内存慢而且便宜,但比虚拟内存要快而且贵。 用兆字节测量。 ? 处理器不可直接访问虚拟内存。 当请求由虚拟地址引用的数据时虚拟地址被翻译成主存地址。 应用程序的性能会因为处理器和内存速度的差异而降低。 执行指令时,处理器会等待从内存访存数据。 等待时处理器不可能执行任何其他指令因为前面指令已装入到寄存器。 为了优化性能,必须将数据存储在尽可能靠近处理器的位置。 这有助于减少访问内存所需的时间,并且能够改善处理器利用率。 了解内存性能 理解内存性能(续) 可以通过了解命中和失败率来计算内存存取所需的时间。 命中率是数据可用次数与从内存请求数据总次数之比。 失败率是找不到数据的次数与从内存请求数据的总次数之比。 请求了特定数据段 78 次。在缓存中找到该数据段 56 次,其余次数需要从主内存中加载。缓存未命中率是多少? 答案: 未命中率为是(78-56)/78 = 0.28 有效存取时间 有效存取时间=缓存命中率*缓存内存的存取时间+缓存未命中率[主内存命中率(主内存的存取时间+缓存内存的存取时

文档评论(0)

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

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

1亿VIP精品文档

相关文档