[发明专利]一种链式结构的GPU显存管理方法在审
| 申请号: | 201810939808.4 | 申请日: | 2018-08-17 |
| 公开(公告)号: | CN109376003A | 公开(公告)日: | 2019-02-22 |
| 发明(设计)人: | 廖科;时洋洋;李少光 | 申请(专利权)人: | 中国航空无线电电子研究所 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06T1/20;G06T1/60 |
| 代理公司: | 上海和跃知识产权代理事务所(普通合伙) 31239 | 代理人: | 杨慧 |
| 地址: | 200233 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 显存 空闲链表 链式结构 全局链表 空闲 合并算法 使用效率 传入的 空闲块 标示 查询 管理 合并 释放 更新 保证 | ||
1.一种链式结构的GPU显存管理方法,包含以下步骤:
步骤1)在GPU的片上显存空间中建立堆对象,每个堆对象至少由一个显存块组成,其中:堆对象的元素中包含指向首个空闲显存块的第二指针;
显存块的元素中包含:
a)显存块大小;
b)显存块起始地址;
c)指向下一个显存块的第三指针;
d)指向前一个显存块的第四指针;
e)在当前是空闲显存块时使用的指向下一个空闲显存块的第五指针;
f)在当前是空闲显存块时使用的指向前一个空闲显存块的第六指针;
由第三指针、第四指针形成所有显存块的全局链表,由第五指针、第六指针形成空存显存块的空闲链表,前后二块显存块在物理上相连;
步骤2)释放显存空间时,将传入的地址所在的显存块块标示为空闲,同时使用第三指针、第四指针查询当前显存块的前后显存块是否为空闲显存块,如果是则进行合并,更新全局链表和空闲链表。
2.根据权利要求1所述的一种链式结构的GPU显存管理方法,其特征在于所述步骤2)中,在将传入的地址所在的显存块块标示为空闲前,先根据传入的地址进行非法地址判断,当地址范围不在当前堆对象范围时,判断为非法地址,程序返回错误信息。
3.根据权利要求1所述的一种链式结构的GPU显存管理方法,其特征在于还包含:
步骤3)需要申请显存空间时,使用第二指针找到首个空闲显存块,使用第五指针依次查询各个空闲显存块,当找到空闲显存块的空间大小大于等于申请空间后,将找到的空闲显存块切分为两个显存块,前半部分大小为申请的大小,且标记为已使用,后半部分为空闲显存块,大小为原始显存块大小减去申请的显存块大小,更新全局链表和空闲链表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空无线电电子研究所,未经中国航空无线电电子研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810939808.4/1.html,转载请声明来源钻瓜专利网。





