【技术实现步骤摘要】
静态网络中的内存空间预配系统及其方法
本公开涉及一种内存分配技术,更具体地说,本公开涉及一种内存空间预分配系统及其方法。
技术介绍
本公开的申请人提出的静态分布式深度学习系统已经越来越受到深度学习领域的关注。静态分布式学习系统从业务处理的全局出发,结合静态分布式系统的整体计算资源以及各个计算资源之间的拓扑关系,对所要处理的数据处理任务静态部署到整个数据处理网络上,由众多执行体静态组成业务处理网络,形成彼此关联的数据处理路径。执行体与执行体之间基于在网络中的上下游关系形成数据生产和消费关系,从而对输入数据进行流水化处理。尤其是,执行体之间靠消息(message)来协调进度,一个执行体会收到上游生产者和下游消费者的消息,当满足触发条件(有限状态自动机控制)时,执行体会发射一条指令给协处理器去执行,执行完毕之后,该执行体会给下游消费者发消息通知它有新的数据可以消费。通过执行体与相邻执行体之间的消息通讯方式来是实现彼此从数据生产和消费关系,由此消除了对数据出的实时的中心调度需求,实现了数据处理的去中心化。然而,在静态 ...
【技术保护点】
1.一种静态网络中的内存空间预配系统,包括:/n任务标记组件,根据部署到同一计算设备中的多个任务的执行顺序,为彼此串行的多个任务赋予同组标记;以及/n内存分配组件,为具有同组标记的多个任务中每个任务预先分配处于同一计算设备中的内存单元中的同一内存块,并在该内存块中为每个任务对应计算图中的每个操作节点的逻辑输出缓存分配专门的内存。/n
【技术特征摘要】
1.一种静态网络中的内存空间预配系统,包括:
任务标记组件,根据部署到同一计算设备中的多个任务的执行顺序,为彼此串行的多个任务赋予同组标记;以及
内存分配组件,为具有同组标记的多个任务中每个任务预先分配处于同一计算设备中的内存单元中的同一内存块,并在该内存块中为每个任务对应计算图中的每个操作节点的逻辑输出缓存分配专门的内存。
2.根据权利要求1所述的静态网络中的内存空间预配系统,还包括:
计算子图划分组件,基于每个任务对应的计算图,划分出多个计算子图,每个计算子图包含一个源操作节点和一个汇操作节点以及在源操作节点和汇操作节点之间的其他操作节点,所述计算子图在所述源操作节点一旦满足执行条件的情况下,该计算子图的其他操作节点能与其他计算子图无关联地满足执行条件;以及
生命周期采集组件,基于所述多个任务的计算图的每个操作节点所属的所有拓扑路径,采集每个操作节点的逻辑输出缓存的从将被写入数据开始到该数据可以被覆写为止的生命周期;
其中所述内存分配组件在所述计算子图所属的计算图对应的内存块中为所述计算子图分配一个内存子块,并在所述内存子块内逐一为所述计算子图中操作节点的逻辑输出缓存在该操作节点的逻辑输出缓存的生命周期内处于空闲状态的内存空间中预分配内存。
3.根据权利要求2所述的静态网络中的内存空间预配系统,其中所述内存分配组件,针对每个待分配内存的逻辑输出缓存的生命周期,从内存子块的起始地址开始遍历所述内存子块,在所述计算子图的内存子块的处于空闲状态且其尺寸大于或等于待分配内存的逻辑输出缓存的内存空间中为待分配内存的逻辑输出缓存预分配内存。
4.根据权利要求2所述的静态网络中的内存空间预配系统,其中所述内存分配组件在所述计算子图的内存子块中按照计算子图中的所有操作节点的逻辑输出缓存的尺寸从大到小的顺序,针对每个待分配内存的逻辑输出缓存的生命周期,从内存子块的起始地址开始遍历所述内存子块,在处于空闲状态且其尺寸大于或等于待分配内存的逻辑输出缓存的内存空间中为待分配内存的逻辑输出缓存预分配内存。
5.根据权利要求2所述的静态网络中的内存空间预配系统,其中所述内存分配组件在所述计算子图的内存子块中按照计算子图中的所有操作节点的逻辑输出缓存的生命周期的时序,针对每个待分配内存的逻辑输出缓存的生命周期,从内存子块的起始地址开始遍历所述内存子块,在处于空闲状态且其尺寸大于或等于待分配内存的逻辑输出缓存的内存空间中为待分配内存的逻辑输出缓存预分配内存。
6.根据权利要求2-5之一所述的静态网络中的内存空间预配系统,其中所述内存分配组件在遍历到所述内存子块中的处于空闲状态且其尺寸小于待分配内存的逻辑输出缓存的第一内存空间时,如果两者尺寸之差值与所述待分配内存的逻辑输出缓存的尺寸之间的比值小于预定比值时,则将所述第一内存空间之后与待分配内存的逻辑输出缓存的生命周期重合的所有已经预分配的内存在大小不变的情况下起始地址增加所述差值,并将尺寸增大后的第一内存空间预先分配给所述待分配内存的逻辑输出缓存。
7.根据权利要求2-5之一所述的静态网络中的内存空间预配系统,其中所述内存分配组件在多个生命周期不重合的待分配内存的逻辑输出缓存需要连续分配到一段连续内存空间时,优先为所述多个待分配内存的逻辑输出缓存中的尺寸最大的逻辑输出缓存预分配内存。
8.根据权利要求2-5之一所述的静态网络中的内存空间预配系统,其中所述内存分配组件在多个生命周期不重合的待分配内存的逻辑输出缓存需要连续分配到一段连续内存空间时,优先为所述多个待分配内存的逻辑输出缓存中生命周期结束时间最晚的逻辑输出缓存预分配内存。
9.一种静态网络中的内存空间预配方法,包括:
任务部署步骤,获取用户所要...
【专利技术属性】
技术研发人员:成诚,袁进辉,柳俊丞,李新奇,
申请(专利权)人:北京一流科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。