[发明专利]一种基于GPU的Cache模拟器及其空间并行加速模拟方法有效
| 申请号: | 201010105094.0 | 申请日: | 2010-02-02 |
| 公开(公告)号: | CN101814039A | 公开(公告)日: | 2010-08-25 |
| 发明(设计)人: | 高小鹏;万寒;王志强;李毅;龙翔 | 申请(专利权)人: | 北京航空航天大学 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F12/08;G06T1/20;G06T1/60 |
| 代理公司: | 北京永创新实专利事务所 11121 | 代理人: | 周长琪 |
| 地址: | 100191*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明提出了一种基于GPU的Cache模拟器及其空间并行加速方法,该Cache模拟器包括Cache初始化模块、Trace预处理模块、Trace基数排序模块、Cache模拟模块及Cache模拟结果统计显示模块,本发明依托GPU强大的并行处理资源,对访存序列进行预处理,利用Cache配置文件的关联性,通过运行在GPU上的基数排序算法对访存序列进行并行排序,得到映射到每一个组上的连续的访存序列,从而进行组间并行的Cache模拟,并通过不同层次不同粒度的并行模拟算法,有效的缩短了Cache模拟时间,提高了Cache的模拟效率,精确模拟Cache的行为,并且开发环境简单,易于实现。 | ||
| 搜索关键词: | 一种 基于 gpu cache 模拟器 及其 空间 并行 加速 模拟 方法 | ||
【主权项】:
一种基于GPU的Cache模拟器,其特征在于,包括Cache初始化模块、Trace预处理模块、Trace基数排序模块、Cache模拟模块、Cache模拟结果统计显示模块;Cache初始化模块用于对Cache配置进行初始化,将Cache配置参数传递给Trace预处理模块和Cache模拟模块;Trace预处理模块用于从用户设定的Trace文件读取访存序列,根据Cache配置参数中的Cache的块大小和Cache组数计算访存序列中各访存记录将映射到的Cache组号,并记录映射到每个Cache组的访存记录的数量,计算每个Cache组中的第一个访存记录在整体访存序列中的下标;Trace基数排序模块用于在GPU的显存中为访存序列动态分配空间,将经过Trace预处理模块处理后的访存序列下载到分配好的GPU的显存空间,并对访存序列以Cache组号为关键字并行地进行基数排序;Cache模拟模块,在GPU上启动多个线程并行地运行,并对线程内各要模拟的Cache组内的块进行初始化,设置每一个Cache块的标记tag为0,状态state为无效Invalid,定位映射到该线程要模拟的Cache组的第一个访存记录的下标,依次读取访存记录,对于每一个访存记录,与组内的Cache块进行匹配,确定是否命中,并根据替换策略调整组内的Cache块的组织结构;Cache模拟结果统计显示模块用于对Cache模拟模块产生的各Cache组的局部统计信息进行综合,得到整个Cache模拟的统计结果和性能参数,将其保存到结果文件或输出到终端;Cache块包括tag信息与state信息,Cache块层数由用户或Cache配置文件指定,第一层Cache块信息及各Cache组的局部统计信息存放在共享存储器Shared Memory里,其他层次的Cache块信息、各Cache组的历史局部统计信息与访存序列存放在全局存储器Global Memory中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201010105094.0/,转载请声明来源钻瓜专利网。





