Application analysis using memory pressure

K. Sudeep, A. Gheith
{"title":"Application analysis using memory pressure","authors":"K. Sudeep, A. Gheith","doi":"10.1145/1111583.1111586","DOIUrl":null,"url":null,"abstract":"As the speeds of microprocessors continue to follow Moore's law, memory speeds keep lagging farther behind so as to make the \"memory wall\" more and more distinct. In order for a processor architect to be able to evaluate the right micro-architectural features for the design, a study of the memory behavior of the applications becomes essential. In this paper we present a new metric termed \"memory pressure\" that can be used to analyze the application's behavior and quantify the demand an application places on the memory subsystem. Memory pressure is characterized by four metrics: (1) value-computation-to-use delay, (2)condition-resolution-to-use delay, (3) address-computation-to-use delay, and (4) value-load-to-use delay. It acts as an indicator of the opportunity that caching, prefetching, speculative loads or other DRAM latency hiding techniques can provide to improve the performance of the application. We have analyzed a few synthetic benchmarks as well as a few scientific applications and have been able to identify the benefit of caches and prefetch techniques for these benchmarks. As we demonstrate in this paper, quantifying the memory pressure not only provides insight into which architectural features a designer should evaluate for optimal performance, but also provides tangible hints to the software designer to make changes to the application -- algorithmic and structural -- to improve the performance.","PeriodicalId":365109,"journal":{"name":"Memory System Performance","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2005-06-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Memory System Performance","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/1111583.1111586","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

As the speeds of microprocessors continue to follow Moore's law, memory speeds keep lagging farther behind so as to make the "memory wall" more and more distinct. In order for a processor architect to be able to evaluate the right micro-architectural features for the design, a study of the memory behavior of the applications becomes essential. In this paper we present a new metric termed "memory pressure" that can be used to analyze the application's behavior and quantify the demand an application places on the memory subsystem. Memory pressure is characterized by four metrics: (1) value-computation-to-use delay, (2)condition-resolution-to-use delay, (3) address-computation-to-use delay, and (4) value-load-to-use delay. It acts as an indicator of the opportunity that caching, prefetching, speculative loads or other DRAM latency hiding techniques can provide to improve the performance of the application. We have analyzed a few synthetic benchmarks as well as a few scientific applications and have been able to identify the benefit of caches and prefetch techniques for these benchmarks. As we demonstrate in this paper, quantifying the memory pressure not only provides insight into which architectural features a designer should evaluate for optimal performance, but also provides tangible hints to the software designer to make changes to the application -- algorithmic and structural -- to improve the performance.
使用内存压力进行应用程序分析
随着微处理器的速度继续遵循摩尔定律,内存速度越来越落后,使得“内存墙”越来越明显。为了使处理器架构师能够为设计评估正确的微架构特性,研究应用程序的内存行为变得至关重要。在本文中,我们提出了一个称为“内存压力”的新度量,它可以用来分析应用程序的行为并量化应用程序对内存子系统的需求。内存压力由四个指标表征:(1)值-计算-使用延迟,(2)条件-解决-使用延迟,(3)地址-计算-使用延迟,(4)值-加载-使用延迟。它可以作为一个指示器,表明缓存、预取、推测负载或其他DRAM延迟隐藏技术可以提供哪些机会来提高应用程序的性能。我们分析了一些综合基准测试和一些科学应用程序,并且能够确定缓存和预取技术对这些基准测试的好处。正如我们在本文中所演示的那样,量化内存压力不仅提供了对设计人员应该评估哪些架构特性以获得最佳性能的洞察,而且还为软件设计人员提供了切实的提示,以便对应用程序进行更改——算法和结构——以提高性能。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信