• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

计算机工程与科学 ›› 2020, Vol. 42 ›› Issue (09): 1521-1528.

• 高性能计算 • 上一篇    下一篇

一种高效的压缩Page Walk Cache结构

贾朝阳,张敦博,王琼,沈立   

  1. (国防科技大学计算机学院,湖南 长沙 410073)

  • 收稿日期:2020-04-08 修回日期:2020-06-09 接受日期:2020-09-25 出版日期:2020-09-25 发布日期:2020-09-24
  • 基金资助:
    国家自然科学基金(61972407)

Compressed page walk cache

JIA Chao-yang,ZHANG Dun-bo,WANG Qiong,SHEN Li   

  1. (School of Computer,National University of Defense Technology,Changsha 410073,China)
  • Received:2020-04-08 Revised:2020-06-09 Accepted:2020-09-25 Online:2020-09-25 Published:2020-09-24

摘要: 通用图形处理单元(GPGPU)已被广泛应用于现代高性能计算系统中。GPGPU的单指令多线程执行模型导致快表命中率较低,特别是对于那些不规则应用,需要借助PWC减少实际的页表访问次数。传统PWC中存在很多冗余信息,加之容量有限,实际效果并不理想。分析了传统PWC中的信息冗余情况,提出了一种新结构——压缩PWC。压缩PWC在保证查找开销不变的基础上,完全消除了冗余信息,压缩了空间,使PWC能够记录更多的页表访问历史,从而有效减少地址转换过程中访问页表的次数。测试结果表明,与相同容量的传统PWC相比,压缩PWC可以显著缩短虚实地址转换时间开销。

关键词: 通用图形处理器, 虚实地址转换, 页表遍历缓存

Abstract: General-Purpose Graphics Processing Units (GPGPUs) his been widely used in modern high performance computing systems. The Single-Instruction Multi-Thread (SIMT) execution model of GPGPUs results in a lower page hit rate, and requires Page Walk Cache (PWC) to reduce the actual number of page table accesses for irregular applications. There is a lot of redundant information in the traditional PWC and the capacity is limited, so the actual effect is not good. We analyze the information redundancy in the traditional PWC and propose a new structure: Compressed PWC. Compressed PWC completely eliminates redundant information and compresses the space while keeping the same search overhead unchanged, so that PWC can record more page table access history, thereby effectively reducing the number of page table accesses during the address translation. Experimental results indicate that, compared with the traditional PWC of the same capacity, compressed PWC can significantly improve the efficiency of virtual-to-physical address translation.


Key words: general-purpose graphics processing unit (GPGPU), virtual-to-physical address translation, page walk cache (PWC)