买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:山东浪潮科学研究院有限公司
摘要:本发明公开了一种基于GPGPU的Cache的替换方法及系统,属于GPGPU存储控制设计技术领域,基于GPGPU线程束访存动态统计实现Cache的替换,在GPGPU的处理单元中设计线程束的动态统计表,以线程束为单位,当数据Cache满时,通过设置一个阈值,设定一段时间内低于该阈值访问次数的线程束不会被存入数据Cache中,访问次数高于该阈值时,优先替换掉最不经常进行访存操作的线程束对应的数据Cache空间。本发明能够避免数据块频繁换入换出导致系统性能的缺失,将数据Cache的存储空间保留给具有较高访问频率的线程束。
主权项:1.一种基于GPGPU的Cache的替换方法,其特征在于,基于GPGPU线程束访存动态统计实现Cache的替换,在GPGPU的处理单元中设计线程束的动态统计表,以线程束为单位,当数据Cache满时,通过设置一个阈值,设定一段时间内低于该阈值访问次数的线程束不会被存入数据Cache中,访问次数高于该阈值时,优先替换掉最不经常进行访存操作的线程束对应的数据Cache空间;所述动态统计表,表项包括:Wid,代表本次访存的线程束ID;W_pc,代表线程束对应的访存指令的访存地址;W_counter,表示该线程束请求数据的次数的累加;W_threhold,表示被替换的阈值;W_valid,用来表示当前表项是否存在;W_select,表示该线程束的请求的数据是否存入到数据Cache中;数据Cache没满的情况下,动态统计表更新创建流程如下:在一开始运行时,数据Cache中没有任何数据,并且动态统计表中没有任何表项,当某一线程束发出的指令判定为存储加载指令时,动态统计表检查该线程束对应的表项是否存在;如果判定为否,即动态统计表中不存在这一个表项,则初始化一个对应的表项,并将W_vaild设置为true,同时由于数据Cache没满,便会将请求的数据存入数据Cache当中,设置W_select为true,表示该线程束请求的缓存行已经存在于数据Cache中了;如果判定为是,则说明该表项存在动态统计表中,对应的表项中的W_counter累加1,表示GPGPU处理单元又对该线程束对应的数据进行了请求,直接将数据Cache中该线程束对应的缓存行读出即可;数据Cache满的情况下,动态统计表更新创建流程如下:首先检测对应线程束的表项是否存在,若不存在,则创建新表项,同时请求的数据不存入数据Cache,即不进行数据Cache的替换;如果判定为对应表项存在动态统计表中,再进一步判断W_select是否为true,即判断该线程束的请求数据是否存在于数据Cache中;若存在于数据Cache中,直接覆盖原数据Cache中缓存行的数据;若不存在于数据Cache中,则比较W_counter是否大于W_threhold,如果为是,则替换掉数据Cache中W_counter较小的线程束对应的缓存块,如果为否,则不会进行数据Cache的替换。
全文数据:
权利要求:
百度查询: 山东浪潮科学研究院有限公司 一种基于GPGPU的Cache的替换方法及系统
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。