1.一种面向张量结构等价的多流GPU显存复用方法,其特征在于,应用于GPU的多流计算场景,不同的计算流存在结构相同但生命周期不同的张量,一个计算流的显存块被释放后,放入显存共享池,所述方法包括:在张量创建阶段,提取张量的结构信息,包括维度、数据类型和步长布局,基于张量张量的结构信息生成唯一结构标识;构建并维护映射表,所述映射表中存储多个键值对,键为所述唯一结构标识,值为唯一结构标识对应的显存块的显存地址,所述显存块位于所述显存共享池中;在为张量进行显存分配请求时,显存分配器结合当前执行上下文标识,查询所述映射表中是否存在与所述唯一结构标识匹配且未被占用的显存地址,在存在的情况下,调整指针指向未被占用的显存地址,为张量分配未被占用的显存;在不存在的情况下申请显存地址并更新所述映射表。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:显存地址的生命周期管理,具体为:为每个显存地址维护引用计数器和最后使用时间戳,当张量绑定显存地址时递增引用计数器,释放时递减引用计数器;当引用计数器为零,且当前时间与显存最后使用时间的时间差超过预设的安全阈值时,将显存地址标记为空闲状态。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括空闲显存地址的自动回收策略:维护显存显存共享池,定期检查池中显存地址的使用状态;对长期未被复用的显存地址执行物理释放操作,归还至GPU显存管理器。
4.根据权利要求1所述的方法,其特征在于,当检测到多个任务请求复用同一显存地址或显存地址不可用时,自动退化为标准显存分配路径,调用深度学习框架的原始显存分配接口。
5.根据权利要求1所述的方法,其特征在于,所述执行上下文标识由任务标识和计算流标识组合生成,用于隔离不同任务或计算流的显存访问。
6.根据权利要求1所述的方法,其特征在于,所述未被占用的显存地址的判断条件包括:所述显存地址的引用计数器值为零,且当前时间与最后使用时间戳的差值超过预设阈值。
7.根据权利要求1所述的方法,其特征在于,所述唯一结构标识的生成方法包括:将所述张量的维度、数据类型和步长布局序列化为字符串,并通过哈希算法生成固定长度的唯一标识。
8.根据权利要求1所述的方法,其特征在于,所述哈希算法包括MD5、SHA-1或CRC32中的至少一种。
9.一种面向张量结构等价的多流GPU显存复用装置,其特征在于,所述装置包括:获取模块,用于在张量创建阶段,提取张量的结构信息,包括维度、数据类型和步长布局,基于张量的结构信息生成唯一结构标识;处理模块,用于构建并维护映射表,所述映射表中存储多个键值对,键为所述唯一结构标识,值为唯一结构标识对应的显存地址;所述处理模块,还用于在为张量进行显存分配请求时,显存分配器结合当前执行上下文标识,查询所述映射表中是否存在与所述唯一结构标识匹配且未被占用的显存地址,若存在则直接复用,否则申请显存地址并更新所述映射表。
10.一种计算机可读存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1-8任一项所述的方法。