Design Space Exploration of Object Caches with Cross-Profiling

Martin Schoeberl, Walter Binder, A. Villazón
{"title":"Design Space Exploration of Object Caches with Cross-Profiling","authors":"Martin Schoeberl, Walter Binder, A. Villazón","doi":"10.1109/ISORC.2011.34","DOIUrl":null,"url":null,"abstract":"To avoid data cache trashing between heap-allocated data and other data areas, a distinct object cache has been proposed for embedded real-time Java processors. This object cache uses high associativity in order to statically track different object pointers for worst-case execution-time analysis. However, before implementing such an object cache, an empirical analysis of different organization forms is needed. We use a cross-profiling technique based on aspect-oriented programming in order to evaluate different object cache organizations with standard Java benchmarks. From the evaluation we conclude that field access exhibits some temporal locality, but almost no spatial locality. Therefore, filling long cache lines on a miss just introduces a high miss penalty without increasing the hit rate enough to make up for the increased miss penalty. For an object cache, it is more efficient to fill individual words within the cache line on a miss.","PeriodicalId":431231,"journal":{"name":"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISORC.2011.34","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

To avoid data cache trashing between heap-allocated data and other data areas, a distinct object cache has been proposed for embedded real-time Java processors. This object cache uses high associativity in order to statically track different object pointers for worst-case execution-time analysis. However, before implementing such an object cache, an empirical analysis of different organization forms is needed. We use a cross-profiling technique based on aspect-oriented programming in order to evaluate different object cache organizations with standard Java benchmarks. From the evaluation we conclude that field access exhibits some temporal locality, but almost no spatial locality. Therefore, filling long cache lines on a miss just introduces a high miss penalty without increasing the hit rate enough to make up for the increased miss penalty. For an object cache, it is more efficient to fill individual words within the cache line on a miss.
用交叉分析方法探索对象缓存的设计空间
为了避免堆分配数据和其他数据区域之间的数据缓存垃圾,已经为嵌入式实时Java处理器提出了一个不同的对象缓存。这个对象缓存使用高关联性,以便静态地跟踪不同的对象指针,以便进行最坏情况下的执行时间分析。然而,在实现这样的对象缓存之前,需要对不同的组织形式进行实证分析。我们使用基于面向方面编程的交叉分析技术,以便使用标准Java基准来评估不同的对象缓存组织。从评价中我们得出结论,实地访问表现出一定的时间局部性,但几乎没有空间局部性。因此,在未命中时填充较长的缓存行只会引入较高的未命中惩罚,而不会增加命中率以弥补增加的未命中惩罚。对于对象缓存,在没有命中的情况下填充缓存行内的单个单词更有效。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信