分享好友 最新动态首页 最新动态分类 切换频道
4路组相连cache设计_计算机体系结构——十项优化Cache性能的高级方法
2024-12-27 05:28

本文翻译摘录自“ComputerArchitecture : A Quantitative Approach (6th Edition)”。

4路组相连cache设计_计算机体系结构——十项优化Cache性能的高级方法

本文介绍十项优化Cache性能的高级方法,将这些方法分为如下的五类:

1. 减少命中时间——小的简单的一级Cache和路预测技术,这两项技术还可以降低功耗。

2. 增加Cache带宽——流水线Cache、多Bank Cache和非阻塞Cache,这些技术对功耗有不同的影响。

3. 减少Cache缺失代价——关键字优先、合并写缓存技术,这两项技术对功耗的影响很小。

4. 降低Cache缺失率——编译器优化技术,显然可以减少编译时间,降低功耗。

5. 通过并行技术降低缺失代价和缺失率——硬件预取、编译器预取,这些方法通常会增加功耗,主要是预取到了一些不使用的数据。

通常,上述这些优化项会增加硬件的复杂度。同时,有几个优化方法需要采用高级编译器技术,最后一个需要依赖HBM。下面对这十项优化Cache性能的高级方法进行详细介绍。

一、利用小而简单的一级Cache来降低命中时间和功耗

高速时钟频率和低功耗的限制均促使对一级Cache大小的限制,类似的,使用较低级别的相联度,也可以减少命中时间和功耗,尽管这种权衡更为复杂一些。

Cache命中过程的关键时间路径包括3个步骤:使用地址中的索引确定Tag存储器的地址;比较读取到的Tag值和地址;如果Cache为组相联,则设置多路选择器来选择正确的数据项。直接映射的Cache可以将Tag检查与数据传输重叠进行,有效减少命中时间。此外,低级别的相联度通常也将降低功耗,因为减少了必须访问的Cacheline。

尽管在新的各代微处理器中片上Cache的数量不断增加,但一级Cache大小的涨幅最近趋缓,甚至没有增长,这是因为大容量一级Cache带来的时钟频率的影响。在最近的许多处理器中,设计者通常是对相联度进行更多的优化,而不是大小。选择相联度时的另一个考虑因素是消除地址别名的可能性,对此后文有介绍。

一种可以在制造芯片前判断各项选择对命中时间和功耗影响的方法是使用CAD工具。CACTI是一个用于估算CMOS微处理器上各种Cache结构的访问时间和能耗的程序。对于一个给定的最小工艺尺寸,CACTI估算在不同Cache大小、不同相联度、不同读写端口数,等更复杂的参数条件下的Cache命中时间。下图展示了Cache大小和相联度对命中时间的影响。对于这些参数,直接映射的命中时间略快于2路组相联,2路组相联是4路组相联Cache的1.2倍,4路组相联是8路组相联Cache的1.4倍。

示例:参考上图和下表中的数据,判断一个32KB的4路组相联一级Cache访问时间是否快于32KB的2路组相联一级Cache。假设二级Cache的缺失代价是一级Cache访问时间的15倍。忽略二级Cache之外的缺失。

假设2路组相联Cache的访问时间为1,那么对于2路Cache结构:

对于4路Cache,访问时间是2路的1.4倍。缺失代价占用的时间为15 / 1.4 = 10.1,简单起见,这里假设为10。那么对于4路Cache结构:

通过以上结果可以看出,较高相联度是一种较为糟糕的权衡选择。然而,由于在现代处理器中,Cache访问通常是流水线化的,所以很难评估对时钟周期时间的影响。

功耗在选择Cache大小和相联度时也是一个需要考虑的因素,如下图所示。在128KB或256KB Cache中,当从直接映射变为2路组相联时,高相联度的能耗比从大于2到可以忽略。

当功耗变的比较严重时,设计者会集中于寻找降低Cache访问的功耗。在Cache访问中,决定功耗的另一个关键因素是Cache中块(block)的数量,因为它决定了所访问的“行”的个数。设计者通常会在保持Cache大小不变的情况下,增加块的大小来降低“行”的个数,但这会增加缺失率,尤其是在比较小的一级Cache中。

另一种选择是将Cache组织为Banks,以便仅访问Cache的一部分,即所需块所在的Bank。多Bank Cache的主要用途是增加带宽。多Bank还减少了功耗,因为访问了更少的Cache。许多多核处理器中的3级Cache存在逻辑上是统一的,但在物理上是分布式的,并有效地充当多Bank的Cache。根据请求的地址,实际上只有一个物理3级Cache(一个Bank)被访问。

在最近的设计中,有三种除了功耗和访问时间消耗之外的其他因素使得在1级Cache中使用较高的相联度。第一,许多处理器在访问Cache时至少需要两个时钟周期,因此命中时间较长可能不会产生太严重的影响。第二,将TLB排除在关键路径之外(TLB带来的延迟可能要大于高相联度导致的延迟),几乎所有的一级Cache都是虚拟寻址的,这就将Cache的大小限制为页大小与相联度的乘积,这是因为只有页内的位才能用于索引。在完成虚拟地址到物理地址转换之前对Cache进行索引的问题还有另外一些解决方法,但提高相联度还有其他一些好处,更具吸引力。第三,在引入多线程之后,冲突缺失会增加,从而提高相联度更具吸引力。

二、通过路预测技术来降低命中时间

最新文章
百度手机卫士 app下载v9.26.12
《百度手机卫士app》一款非常好用的手机软件,这一款是百度手机软件的精简版,这一版保留了核心功能删除了多种没有必要的功能和广告,减小了体积。喜欢的朋友可以来下载一下。有趣的手机软件好用的安卓软件手机安全软件下载从心出发,5.54M
谷歌浏览器官方版 v124.0.6116.78 Chrome中文版
谷歌浏览器(Google Chrome)是Google公司开发的网页浏览器。谷歌浏览器设计超级简洁,使用起来更加方便,支持多标签浏览,每个标签页面都在独立的“沙箱”内运行,很大程度上避免了恶意网页和应用软件侵入而崩溃。此外,谷歌浏览器基于更强
英文seo
英文SEO(Search Engine Optimization)是一种通过优化网站内容和结构,提高网站在搜索引擎中排名的技术。它包括关键词研究、内容创建、链接建设、网站架构优化等多个方面。通过SEO技术,可以提高网站的曝光率,吸引更多的潜在客户,并最终
谷歌SEO营销攻略,解锁网站流量与品牌声望提升之道
谷歌SEO营销策略旨在提升网站流量和品牌知名度。通过关键词优化、高质量内容创作、链接建设、移动优化等技术手段,提升网站在谷歌搜索结果中的排名。利用社交媒体、付费广告等渠道扩大品牌影响力,吸引更多潜在客户,实现网站流量和品牌价
腾讯云发布DI-X深度学习平台,AI布局全面提速
3月28日,腾讯云宣布推出DI-X深度学习平台,进一步开放腾讯在AI领域的领先能力,助力企业驶入人工智能快车道。随着DI-X平台的发布,腾讯云在AI领域的全线布局也浮出水面:从IaaS基础设施、AI平台服务、AI基础服务、AI应用服务,到垂直行业
高清美女写真生成器评测:解锁AI绘画的无限可能!
步骤二:选择功能在首页,选择“高级生图”选项,进入后就可以看到多种图像风格供选择。步骤三:输入文本描述在生成页面,用户只需输入对想要生成美女的详细描述,比如“清新自然的夏日穿搭”或“优雅的晚礼服”,然后点击生成按钮。步骤四
用AI画美女:一键生成我的超逼真AI女友!
Midjourney:作为一款广受欢迎的AI艺术生成工具,Midjourney使用起来也相当简单。用户能够使用Discord平台下的命令进行艺术创作。其生成结果色彩丰富,适合追求栩栩如生效果的艺术家。然而,由于其使用仍需小白用户做一些配置,因此对新手
网店转让合同协议书范本(精选6篇)
网店转让合同协议书是保护转让方和受让方权益的重要法律文件,详细描述转让的网店,包括网店名称、平台、店铺类型、经营状况等。以下是小编为大家整理的关于网店转让合同协议书范本(精选6篇)的内容,供大家参考,希望能够给大家带来借鉴或
获取网站Alexa排名数值的方法
  网络上有很多文章介绍如何自动抓取网站的Alexa排名,但是仔细一看发现抓取到的数据(Alexa排名数值)被Alexa加入了很多干扰元素,如果只是要将数据(Alexa排名数值)显示在页面倒没有什么问题
相关文章
推荐文章
发表评论
0评