[发明专利]一种通过减少数据传输实现GPU降耗的方法及系统有效
| 申请号: | 201911110442.0 | 申请日: | 2019-11-14 |
| 公开(公告)号: | CN110968180B | 公开(公告)日: | 2020-07-28 |
| 发明(设计)人: | 魏雄;王秋娴;胡倩;闫坤 | 申请(专利权)人: | 武汉纺织大学 |
| 主分类号: | G06F1/3234 | 分类号: | G06F1/3234;G06F9/54 |
| 代理公司: | 武汉泰山北斗专利代理事务所(特殊普通合伙) 42250 | 代理人: | 程千慧 |
| 地址: | 430073 *** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 通过 减少 数据传输 实现 gpu 降耗 方法 系统 | ||
1.一种通过减少数据传输实现GPU降耗的方法,其特征在于,包括以下步骤:
步骤1、判断所有数据块与线程之间的依赖关系,将共享一个数据块的线程划分到一个线程组,若不同线程组之间有线程重叠,则比较对应数据块之和与缓存空间的大小,根据判断是否进行将多个线程组合为一个线程组的操作;之后,将每个线程组和共享的数据块放入一个流多处理器的L1缓存中;
步骤2、每次向L1缓存中插入数据块之前,首先判断缓存是否已满,若未满则直接将数据块c插入L1缓存,若已满则采取预设缓存替换策略,对L1缓存中的数据块进行淘汰替换。
2.根据权利要求1所述的通过减少数据传输实现GPU降耗的方法,其特征在于,所述步骤1中,按照以下方案对数据块进行存储:设三组线程组A,B,C分别共享数据块a,数据块b和数据块c;Na,Nb,Nc分别为数据块a、数据块b和数据块c的大小,M表示缓存空间大小,先判断线程组之间是否存在重叠线程,再比较数据块之和与缓存空间M的大小:
若线程组A,B存在重叠线程,则比较Na+Nb与M的值,若Na+NbM,则线程组A,B不能合并,先放入数据块a执行,随后判断线程组B,C是否存在重叠线程,若存在,则比较Nb+Nc与 M的值,若Nb+Nc大于M则线程组B,C不能合并,先放入数据块b,等数据块b执行完成后放入数据块c;若线程组B,C存在重叠线程,且Nb+NcM,线程组B,C可以合并,数据块a执行完成后直接放入数据块b,c;若线程组B,C不存在重叠线程,放入数据块b,等b执行完成后放入数据块c;
若线程组A,B存在存在重叠线程,且Na+NbM,则线程组A,B可以合并,再判断线程组A,B的并集与线程组C是否存在重叠线程,若存在,则比较Na+Nb+Nc与M的值,若Na+Nb+Nc大于M,线程组A,B并集不能和线程组C合并,先放入数据块a,b,执行完成后放入数据块c;如果线程组A,B并集与线程组C不存在重叠线程,那么也是先放入数据块a,b,执行完成后放入数据块c;
若线程组A,B不存在重叠线程,那么先放入数据块a,再判断线程组B,C是否存在重叠线程,若存在,则比较Nb+Nc与M的值,若Nb+Nc大于M,则线程组B,C不能合并,放入数据块b,等b执行完成后放入数据块c;若Nb+Nc小于M,线程组B,C可以合并,数据块a执行完成后放入数据块b,c;若线程组B,C不存在重叠线程,放入数据块b执行完成后放入数据块c。
3.根据权利要求1所述的通过减少数据传输实现GPU降耗的方法,其特征在于,所述步骤2中的缓存替换策略为:
设缓存空间中存在的数据块数量为i,每个数据块最近被访问时间由T1,T2,……,Ti表示,同时每个数据块的大小被记录为N0,N1,N2,N3,……,Ni,待插入L1缓存中的数据块为数据块c,其大小为Nc,对缓存空间中的数据块被访问时间T进行排序,选定L1缓存中最近一次被访问时间长度T最长的数据块j,其大小为Nj;
将选定数据块j与待插入数据块c大小进行比较:
若NjNc,则将数据块j与数据块c置换;
若NjNc,则通过遍历将缓存中除数据块j的各个数据块大小与数据块c大小进行比较,当缓存中某一数据块的大小大于数据块c的大小时,停止比较,并将其与数据块c进行置换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉纺织大学,未经武汉纺织大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911110442.0/1.html,转载请声明来源钻瓜专利网。





