【24h】

Two-Dimensional Bi-directional Object Layout

机译:二维双向对象布局

获取原文
获取原文并翻译 | 示例

摘要

C++ object layout schemes rely on (sometimes numerous) compiler generated fields. We describe a new language-independent object layout scheme, which is space optimal, i.e., objects are contiguous, and contain no compiler generated fields other than a single type identifier. As in C++ and other multiple inheritance languages such as Cecil and Dylan, the new scheme sometimes requires extra levels of indirection to access some of the fields. Using a data set of 28 hierarchies, totaling almost 50,000 types, we show that the new scheme improves field access efficiency over standard implementations, and competes favorably with (the non-space optimal) highly optimized C++ specific implementations. The benchmark includes a new analytical model for computing the frequency of indirections in a sequence of field access operations. Our layout scheme relies on whole-program analysis, which requires about 10 microseconds per type on a contemporary architecture (Pentium III, 900Mhz, 256MB machine), even in very large hierarchies.
机译:C ++对象布局方案依赖于(有时很多)编译器生成的字段。我们描述了一种新的与语言无关的对象布局方案,该方案是空间最佳的,即对象是连续的,除了单个类型标识符之外,不包含编译器生成的字段。像在C ++和其他多种继承语言(例如Cecil和Dylan)中一样,新方案有时需要额外级别的间接访问某些字段。我们使用28个层次结构的数据集(总共近50,000种类型)来证明,该新方案比标准实现提高了字段访问效率,并且与(非空间最佳)高度优化的C ++特定实现竞争。该基准测试包括一个新的分析模型,用于计算一系列现场访问操作中的间接频率。我们的布局方案依赖于整个程序的分析,即使在非常大的层次结构中,现代体系结构(Pentium III,900Mhz,256MB机器)每种类型也需要大约10微秒的时间。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号