基于非易失内存的深度神经网络checkpoint优化系统以及方法技术方案

技术编号:37670986 阅读:17 留言:0更新日期:2023-05-26 04:32
本发明专利技术提供一种基于非易失内存的深度神经网络checkpoint优化系统以及方法,通过客户端模块以及服务端模块在深度神经网络训练开始前将对应的网络结构注册在非易失内存中,并创建数据索引和基于远程直接内存访问(RDMA)的数据通信协议;并且在神经网络训练过程中,本发明专利技术提供了零拷贝、异步、端到端的神经网络数据持久化,使得用户可以在不影响训练速度的前提下做细粒度的checkpointing以保证容错性和数据持久性。和数据持久性。和数据持久性。

【技术实现步骤摘要】
基于非易失内存的深度神经网络checkpoint优化系统以及方法


[0001]本专利技术涉及计算机科学领域中的存储系统领域及深度学习系统领域,特别是涉及一种基于非易失内存的深度神经网络checkpoint优化系统以及方法。

技术介绍

[0002]随着神经网络模型结构和训练集群系统的复杂性与日俱增,训练模型的持久化和数据容错性成为了大规模训练系统中重要的问题。
[0003]现有神经网络的checkpointing涉及GPU、网络、存储等多个软硬件层,复杂的软件层导致高性能硬件的设备无法充分利用,严重影响了数据持久化时读取和写入性能;并且现有方案的性能不足使得神经网络训练缺乏细粒度的checkpoint机制,使得神经网络训练的容错性较低,缺乏快速数据恢复机制;另外在分布式、多用户的现代神经网络训练过程中,由于硬件和系统故障频发,用户需要高性能的数据持久化机制,但目前缺乏类似的系统。

技术实现思路

[0004]鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种基于非易失内存的深度神经网络checkpoint优化系统以及方法,用于解决以上现有技术问题。
[0005]为实现上述目的及其他相关目的,本专利技术提供一种基于非易失内存的深度神经网络checkpoint优化系统,所述系统包括:位于装有GPU显存的计算节点内的客户端模块以及位于装有非易失内存的存储节点内的服务端模块;其中,在每个神经网络模型训练开始之前,所述客户端模块将对存储在所述GPU显存的对应神经网络模型进行初始化获得的网络结构发送给客户端模块构建该神经网络模型在所述非易失内存上的索引结构,以建立所述GPU显存到所述非易失内存之间的端到端通信;当所述服务端模块在对应神经网络模型训练过程中接收到来自客户端模块的checkpoint请求时,基于该神经网络模型的索引结构直接将对应的模型数据由所述GPU显存读取到非易失内存上。
[0006]于本专利技术的一实施例中,所述客户端模块对存储在所述GPU显存的对应神经网络模型进行初始化获得网络结构的方式包括:通过神经网络框架收集对应神经网络模型中指向模型每一层的GPU内存指针;使用NVIDIA Peer Memory内核模块基于模型每一层的GPU内存指针将模型每一层的GPU地址空间注册为RDMA内存区域,并给每个内存区域都赋予唯一的标识符;将各标识符与模型每一层的元数据一一对应地聚合到一个模型结构包中。
[0007]于本专利技术的一实施例中,所述客户端模块构建该神经网络模型在所述非易失内存上的索引结构的方式包括:当接收到所述模型结构包后,从线程池中选择一线程基于该模型结构包在非易失内存中构建对应该神经网络模型的索引结构,以便将该神经网络模型的每一层一一映射到checkpoint结构。
[0008]于本专利技术的一实施例中,所述索引结构为三级索引结构,包括:位于第一级的模型
表、位于第二级的模型元数据以及位于第三级的模型数据信息。
[0009]于本专利技术的一实施例中,所述当所述服务端模块在对应神经网络模型训练过程中接收到来自客户端模块的checkpoint请求时,基于该神经网络模型的索引结构直接将对应的模型数据由所述GPU显存读取到非易失内存上的方式包括:当所述客户端模块在对应神经网络模型训练过程中接收到用户checkpoint请求时,获取对应的GPU内存指针并向所述服务端模块发送生成的checkpoint请求;所述服务端模块基于来自客户端模块的checkpoint请求,控制对应的线程基于对应构建的索引结构通过RDMA读操作直接将对应的模型数据由所述GPU显存读取到非易失内存上。
[0010]于本专利技术的一实施例中,当所述服务端模块接收到来自客户端模块的数据恢复请求时,基于该神经网络模型的索引结构主动将对应的模型数据从所述非易失内存写入所述GPU显存中。
[0011]于本专利技术的一实施例中,所述客户端模块通过IPoIB协议或TCP协议与服务端模块通信。
[0012]于本专利技术的一实施例中,所述神经网络框架为PyTorch软件库。
[0013]为实现上述目的及其他相关目的,本专利技术提供一种基于非易失内存的深度神经网络checkpoint优化方法,用于基于非易失内存的深度神经网络checkpoint优化系统,包括:位于装有GPU显存的计算节点内的客户端模块以及位于装有非易失内存的存储节点内的服务端模块,所述方法包括:在每个神经网络模型训练开始之前,所述客户端模块将对存储在所述GPU显存的对应神经网络模型进行初始化获得的网络结构发送给客户端模块构建该神经网络模型在所述非易失内存上的索引结构,以建立所述GPU显存到所述非易失内存之间的端到端通信;当所述服务端模块在对应神经网络模型训练过程中接收到来自客户端模块的checkpoint请求时,基于该神经网络模型的索引结构直接将对应的模型数据由所述GPU显存读取到非易失内存上。
[0014]于本专利技术的一实施例中,所述方法还包括:当所述服务端模块接收到来自客户端模块的数据恢复请求时,基于该神经网络模型的索引结构主动将对应的模型数据从所述非易失内存写入所述GPU显存中。
[0015]如上所述,本专利技术是一种基于非易失内存的深度神经网络checkpoint优化系统以及方法,具有以下有益效果:本专利技术通过客户端模块以及服务端模块在深度神经网络训练开始前将对应的网络结构注册在非易失内存中,并创建数据索引和基于远程直接内存访问(RDMA)的数据通信协议;并且在神经网络训练过程中,本专利技术提供了零拷贝、异步、端到端的神经网络数据持久化,使得用户可以在不影响训练速度的前提下做细粒度的checkpointing以保证容错性和数据持久性。
附图说明
[0016]图1显示为本专利技术一实施例中的基于非易失内存的深度神经网络checkpoint优化系统的结构示意图。
[0017]图2显示为本专利技术一实施例中的基于非易失内存的深度神经网络checkpoint优化系统的结构示意图。
[0018]图3显示为本专利技术一实施例中的基于非易失内存的深度神经网络checkpoint优化
系统的的结构示意图。
[0019]图4显示为本专利技术一实施例中的基于非易失内存的深度神经网络checkpoint优化方法的流程示意图。
[0020]图5显示为本专利技术一实施例中的数据读写流程示意图。
具体实施方式
[0021]以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0022]需要说明的是,在下述描述中,参考附图,附图描述了本专利技术的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本专利技术的精神和范围的情况下进行机械组成、结构、电气以及操作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于非易失内存的深度神经网络checkpoint优化系统,其特征在于,所述系统包括:位于装有GPU显存的计算节点内的客户端模块以及位于装有非易失内存的存储节点内的服务端模块;其中,在每个神经网络模型训练开始之前,所述客户端模块将对存储在所述GPU显存的对应神经网络模型进行初始化获得的网络结构,发送给客户端模块构建该神经网络模型在所述非易失内存上的索引结构,以建立所述GPU显存到所述非易失内存之间的端到端通信;当所述服务端模块在对应神经网络模型训练过程中接收到来自客户端模块的checkpoint请求时,基于该神经网络模型的索引结构直接将对应的模型数据由所述GPU显存读取到非易失内存上。2.根据权利要求1中所述的基于非易失内存的深度神经网络checkpoint优化系统,其特征在于,所述客户端模块对存储在所述GPU显存的对应神经网络模型进行初始化获得网络结构的方式包括:通过神经网络框架收集对应神经网络模型中指向模型每一层的GPU内存指针;使用NVIDIA Peer Memory内核模块基于模型每一层的GPU内存指针将模型每一层的GPU地址空间注册为RDMA内存区域,并给每个内存区域都赋予唯一的标识符;将各标识符与模型每一层的元数据一一对应地聚合到一个模型结构包中。3.根据权利要求2中所述的基于非易失内存的深度神经网络checkpoint优化系统,其特征在于,所述客户端模块构建该神经网络模型在所述非易失内存上的索引结构的方式包括:当接收到所述模型结构包后,从线程池中选择一线程基于该模型结构包在非易失内存中构建对应该神经网络模型的索引结构,以便将该神经网络模型的每一层一一映射到checkpoint结构。4.根据权利要求3中所述的基于非易失内存的深度神经网络checkpoint优化系统,其特征在于,所述索引结构为三级索引结构,包括:位于第一级的模型表、位于第二级的模型元数据以及位于第三级的模型数据信息。5.根据权利要求4中所述的基于非易失内存的深度神经网络checkpoint优化系统,其特征在于,所述当所述服务端模块在对应神经网络模型训练过程中接收到来自客户端模块的checkpoint请求时,基于该神经网络模型的索引结构直...

【专利技术属性】
技术研发人员:殷树吴天元李元皓
申请(专利权)人:上海科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1