[发明专利]用于对GPU显存进行复用的方法及装置有效
申请号: | 202210202697.5 | 申请日: | 2022-03-03 |
公开(公告)号: | CN114296945B | 公开(公告)日: | 2022-05-20 |
发明(设计)人: | 赵军平 | 申请(专利权)人: | 北京蚂蚁云金融信息服务有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/21 |
代理公司: | 北京永新同创知识产权代理有限公司 11376 | 代理人: | 林锦辉;刘景峰 |
地址: | 100192 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 gpu 显存 进行 方法 装置 | ||
1.一种用于对GPU显存进行复用的方法,包括:
在应用程序执行循环任务的过程中,记录所述应用程序访问的用于复用GPU显存的复用内存对象以及各个复用内存对象的对象信息,所述对象信息包括数据量、在一次循环中的被访问次数、被访问时间点以及每次被访问的访问时长,所述各个复用内存对象包括属于所述循环任务的一个循环中的复用内存对象;
循环执行以下分配过程,直至所述循环任务的一个循环中的所有复用内存对象分配完成:
按照所述各个复用内存对象的数据量从大到小的顺序,依次选取复用内存对象作为待分配复用内存对象;
针对所选取的待分配复用内存对象,根据该待分配复用内存对象的对象信息以及所述GPU显存中当前已存在的复用内存段所分配的各个复用内存对象的对象信息,为该待分配复用内存对象在所述GPU显存中分配复用内存段;以及
根据所述各个复用内存对象以及对应分配的复用内存段,在所述循环任务执行过程中将所述各个复用内存对象在所述GPU显存和CPU内存之间进行数据迁移,以对所述GPU显存进行复用。
2.如权利要求1所述的方法,其中,为各个待分配复用内存对象所分配的复用内存段包括:为该待分配复用内存对象分配时已存在的复用内存段中的一个,或者从所述GPU显存中新划分的一个复用内存段。
3.如权利要求2所述的方法,其中,针对所选取的待分配复用内存对象,根据该待分配复用内存对象的对象信息以及所述GPU显存中当前已存在的复用内存段所分配的各个复用内存对象的对象信息,为该待分配复用内存对象在所述GPU显存中分配复用内存段包括:
针对所选取的待分配复用内存对象,根据该待分配复用内存对象的被访问次数、被访问时间点、访问时长以及所述GPU显存中当前已存在的复用内存段所分配的各个复用内存对象的在一次循环中的被访问次数、被访问时间点和访问时长,确定用于被该待分配复用内存对象复用的复用内存段;以及
将该待分配复用内存对象分配给所确定的复用内存段。
4.如权利要求3所述的方法,其中,将该待分配复用内存对象分配给所确定的复用内存段包括:
当所确定出的复用内存段包括至少两个时,根据所确定出的各个复用内存段的存储空间以及该待分配复用内存对象的数据量确定待复用的复用内存段;以及
将该待分配复用内存对象分配给所述待复用的复用内存段。
5.如权利要求3所述的方法,其中,针对所选取的待分配复用内存对象,根据该待分配复用内存对象的被访问次数、被访问时间点、访问时长以及所述GPU显存中当前已存在的复用内存段所分配的各个复用内存对象的在一次循环中的被访问次数、被访问时间点和访问时长,确定用于被该待分配复用内存对象复用的复用内存段包括:
针对所选取的待分配复用内存对象,根据该待分配复用内存对象的被访问次数、被访问时间点、访问时长以及所述GPU显存中当前已存在的复用内存段所分配的各个复用内存对象的在一次循环中的被访问次数、被访问时间点和访问时长,确定该待分配复用内存对象与当前已存在的复用内存段所分配的各个复用内存对象在访问时间上是否有交集;以及
将所分配的各个复用内存对象在访问时间上与该待分配复用内存对象无交集的复用内存段确定为用于被该待分配复用内存对象复用的复用内存段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京蚂蚁云金融信息服务有限公司,未经北京蚂蚁云金融信息服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210202697.5/1.html,转载请声明来源钻瓜专利网。