CN111562988A - 一种神经网络训练计算的迁移方法和装置 - Google Patents
一种神经网络训练计算的迁移方法和装置 Download PDFInfo
- Publication number
- CN111562988A CN111562988A CN202010424387.9A CN202010424387A CN111562988A CN 111562988 A CN111562988 A CN 111562988A CN 202010424387 A CN202010424387 A CN 202010424387A CN 111562988 A CN111562988 A CN 111562988A
- Authority
- CN
- China
- Prior art keywords
- memory allocation
- allocation interface
- video memory
- training
- shared library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 99
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000005012 migration Effects 0.000 title claims abstract description 45
- 238000013508 migration Methods 0.000 title claims abstract description 45
- 238000004364 calculation method Methods 0.000 title abstract description 23
- 230000004044 response Effects 0.000 claims abstract description 21
- 238000013135 deep learning Methods 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种神经网络训练计算的迁移方法和装置,该方法包括:编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。本发明能够透明修改PyTorch的内存分配并整体迁移上层页面,提高内存管理灵活性和迁移计算量,使得神经网络训练更方便更有效率。
Description
技术领域
本发明涉及人工智能领域,更具体地,特别是指一种神经网络训练计算的迁移方法和装置。
背景技术
深度学习模型近年来朝着更深、更大的方向发展,例如,ResNet-1001由1001层组成。现代的GPU(图形处理器)最大的可支持内存为32G,由于GPU的内存限制,模型太大时会无法进行训练。为解决模型太大无法训练的问题,从硬件的角度来看,GPU应该设计为具有更大的物理内存,但是增加物理内存的成本很高。从软件角度来看,可以使用外部存储器(例如CPU存储器)在训练期间临时存储中间结果。LMS(大模型支持)修改了PyTorch的底层内存管理,将中间结果的底层数据部分搬运到CPU存储器中,从而可支持更大的模型或者大的批量大小训练。
但是LMS为了调整PyTorch的内存管理,需要修改PyTorch的内核部分,这对于经常更新的PyTorch来说灵活性差;另外LMS数据搬运的效率不高,其只搬运纯数据部分,因此仍然不能支持足够大的模型。
针对现有技术中对PyTorch的内存管理调整灵活性差、迁移计算量少的问题,目前尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例的目的在于提出一种神经网络训练计算的迁移方法和装置,能够透明修改PyTorch的内存分配并整体迁移上层页面,提高内存管理灵活性和迁移计算量,使得神经网络训练更方便更有效率。
基于上述目的,本发明实施例的第一方面提供了一种神经网络训练计算的迁移方法,包括执行以下步骤:
编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;
使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;
响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
在一些实施方式中,统一内存受到图形处理器和中央处理器控制,同时用作显存和普通内存。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第一阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练包括;使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口直接迁移到统一内存以执行训练。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练包括:使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口直接迁移到统一内存以执行训练。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到中央处理器的普通内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到中央处理器的普通内存以执行训练包括:使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口以大模型支持方式迁移到中央处理器的普通内存以执行训练。
在一些实施方式中,第一阈值大于等于第二阈值。
本发明实施例的第二方面提供了一种神经网络训练计算的迁移装置,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;
使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;
响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
本发明具有以下有益技术效果:本发明实施例提供的神经网络训练计算的迁移方法和装置,通过编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练的技术方案,能够透明修改PyTorch的内存分配并整体迁移上层页面,提高内存管理灵活性和迁移计算量,使得神经网络训练更方便更有效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的神经网络训练计算的迁移方法的流程示意图;
图2为本发明提供的神经网络训练计算的迁移方法的调用关系示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了一种能够提高内存管理灵活性和迁移计算量的神经网络训练计算的迁移方法的一个实施例。图1示出的是本发明提供的功耗调整方法的流程示意图。
所述的神经网络训练计算的迁移方法,如图1所示,包括执行以下步骤:
步骤S101:编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
步骤S103:将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;
步骤S105:使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;
步骤S107:响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
在一些实施方式中,统一内存受到图形处理器和中央处理器控制,同时用作显存和普通内存。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第一阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练包括;使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口直接迁移到统一内存以执行训练。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到统一内存以执行训练包括:使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口直接迁移到统一内存以执行训练。
在一些实施方式中,方法还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到中央处理器的普通内存以执行训练。
在一些实施方式中,使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口迁移到中央处理器的普通内存以执行训练包括:使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口以大模型支持方式迁移到中央处理器的普通内存以执行训练。
在一些实施方式中,第一阈值大于等于第二阈值。
根据本发明实施例公开的方法还可以被实现为由GPU(图形处理器)执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被GPU执行时,执行本发明实施例公开的方法中限定的上述功能。上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
下面根据具体实施例进一步阐述本发明的具体实施方式。
NVIDIA GPU在Pascal(帕斯卡深度学习框架)架构后,UM(统一内存)支持页错误和页迁移。PyTorch中在分配GPU内存时调用cudaMalloc接口(NVIDIA GPU分配显存的接口),当模型太大时LMS就不能支持训练了。本发明利用UM的特性,以动态库的方式,如图2所示地使分配内存时调用cudaMallocManaged接口(NVIDIA分配统一内存的接口),当模型太大不能训练时,进行自动页错误和页迁移,将数据从GPU搬运到CPU,从而实现自动迁移数据,而这种方式能搬运更多的内存,因此在有限的GPU内存下,能支持训练更大的模型。为了避免直接修改PyTorch内核,灵活性太低,我们方法在设计中利用了LD_PRELOAD(用于动态共享库加载的环境变量)功能,该功能将我们的方法编译成动态库,实现PyTorch透明调用UM的内存分配接口,从而大大提高了方法的灵活性。具体实施步骤如下:
步骤1:安装PyTorch,可用源码编译的形式安装或者直接用pip工具安装;
步骤2:编写动态库的源码文件,在文件中将cudaMalloc用cudaMallocManaged实现,并将文件编译成动态共享库;
步骤3:用LD_PRELOAD的形式,将动态共享库路径导入环境变量中,实现透明修改PyTorch;
步骤4:用PyTorch框架开启训练ResNet-50(50层卷积层的神经网络结构),可按正常使用PyTorch的方式进行训练,不需要更改之前可用于PyTorch的训练的任何文件。
本发明一方面解决LMS的搬运的数据搬运效率不高问题,本方法的数据搬运利用UM,因此实现了自动搬运数据。在训练ResNet-50时,支持的最大批量大小为2670,其中数据集为cifar10,GPU为NVIDIA Tesla T4,CPU内存为376G;另一方面解决LMS修改PyTorch时不够灵活的问题,采用动态库的方式,从而实现了透明修改PyTorch底层内存分配问题。
从上述实施例可以看出,本发明实施例提供的神经网络训练计算的迁移方法,通过编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练的技术方案,能够透明修改PyTorch的内存分配并整体迁移上层页面,提高内存管理灵活性和迁移计算量,使得神经网络训练更方便更有效率。
需要特别指出的是,上述神经网络训练计算的迁移方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于神经网络训练计算的迁移方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种能够提高内存管理灵活性和迁移计算量的神经网络训练计算的迁移装置的一个实施例。
功耗调整装置包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;
使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;
响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
在一些实施方式中,统一内存受到图形处理器和中央处理器控制,同时用作显存和普通内存。
在一些实施方式中,步骤还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口直接迁移到统一内存以执行训练。
在一些实施方式中,步骤还包括:响应于训练神经网络结构所需的显存超过最大显存的第二阈值,还使用动态共享库将底层张量数据通过统一内存分配接口和显存分配接口以大模型支持方式迁移到中央处理器的普通内存以执行训练。
在一些实施方式中,第一阈值大于等于第二阈值。
从上述实施例可以看出,本发明实施例提供的神经网络训练计算的迁移装置,通过编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;将动态共享库可调用地连接到统一内存分配接口和显存分配接口以加载到环境变量中;使用内核未经修改的深度学习框架连接到显存分配接口并在环境变量中训练神经网络结构;响应于训练神经网络结构所需的显存超过最大显存的第一阈值,而使用动态共享库将上层页面通过统一内存分配接口和显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练的技术方案,能够透明修改PyTorch的内存分配并整体迁移上层页面,提高内存管理灵活性和迁移计算量,使得神经网络训练更方便更有效率。
需要特别指出的是,上述神经网络训练计算的迁移装置的实施例采用了所述神经网络训练计算的迁移方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到所述神经网络训练计算的迁移方法的其他实施例中。当然,由于所述神经网络训练计算的迁移方法实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于所述神经网络训练计算的迁移装置也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种神经网络训练计算的迁移方法,其特征在于,包括执行以下步骤:
编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
将所述动态共享库可调用地连接到所述统一内存分配接口和所述显存分配接口以加载到环境变量中;
使用内核未经修改的深度学习框架连接到所述显存分配接口并在所述环境变量中训练神经网络结构;
响应于训练所述神经网络结构所需的显存超过最大显存的第一阈值,而使用所述动态共享库将上层页面通过所述统一内存分配接口和所述显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
2.根据权利要求1所述的方法,其特征在于,所述统一内存受到图形处理器和中央处理器控制,同时用作显存和普通内存。
3.根据权利要求1所述的方法,其特征在于,还包括:响应于训练所述神经网络结构所需的显存超过最大显存的第一阈值,还使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到所述统一内存以执行训练。
4.根据权利要求3所述的方法,其特征在于,使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到所述统一内存以执行训练包括;使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口直接迁移到所述统一内存以执行训练。
5.根据权利要求1所述的方法,其特征在于,还包括:响应于训练所述神经网络结构所需的显存超过最大显存的第二阈值,还使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到所述统一内存以执行训练。
6.根据权利要求5所述的方法,其特征在于,使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到所述统一内存以执行训练包括:使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口直接迁移到所述统一内存以执行训练。
7.根据权利要求1所述的方法,其特征在于,还包括:响应于训练所述神经网络结构所需的显存超过最大显存的第二阈值,还使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到中央处理器的普通内存以执行训练。
8.根据权利要求7所述的方法,其特征在于,使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口迁移到中央处理器的普通内存以执行训练包括:使用所述动态共享库将底层张量数据通过所述统一内存分配接口和所述显存分配接口以大模型支持方式迁移到中央处理器的普通内存以执行训练。
9.根据权利要求5-8中任一项所述的方法,其特征在于,所述第一阈值大于等于所述第二阈值。
10.一种神经网络训练计算的迁移装置,其特征在于,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,所述程序代码在被运行时执行以下步骤:
编译透明调用脚本以获得使用统一内存分配接口替代显存分配接口的动态共享库;
将所述动态共享库可调用地连接到所述统一内存分配接口和所述显存分配接口以加载到环境变量中;
使用内核未经修改的深度学习框架连接到所述显存分配接口并在所述环境变量中训练神经网络结构;
响应于训练所述神经网络结构所需的显存超过最大显存的第一阈值,而使用所述动态共享库将上层页面通过所述统一内存分配接口和所述显存分配接口以页错误和页迁移的方式迁移到统一内存以执行训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010424387.9A CN111562988B (zh) | 2020-05-19 | 2020-05-19 | 一种神经网络训练计算的迁移方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010424387.9A CN111562988B (zh) | 2020-05-19 | 2020-05-19 | 一种神经网络训练计算的迁移方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111562988A true CN111562988A (zh) | 2020-08-21 |
CN111562988B CN111562988B (zh) | 2022-11-25 |
Family
ID=72074795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010424387.9A Active CN111562988B (zh) | 2020-05-19 | 2020-05-19 | 一种神经网络训练计算的迁移方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111562988B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116226334A (zh) * | 2023-03-03 | 2023-06-06 | 北京百度网讯科技有限公司 | 生成式大语言模型训练方法以及基于模型的搜索方法 |
WO2023174013A1 (zh) * | 2022-03-15 | 2023-09-21 | 北京有竹居网络技术有限公司 | 显存分配方法、装置、介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180060100A1 (en) * | 2016-08-30 | 2018-03-01 | Red Hat Israel, Ltd. | Virtual Machine Migration Acceleration With Page State Indicators |
CN108229651A (zh) * | 2017-11-28 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络模型迁移方法和系统、电子设备、程序和介质 |
CN109976903A (zh) * | 2019-02-22 | 2019-07-05 | 华中科技大学 | 一种基于层宽内存分配的深度学习异构计算方法和系统 |
CN110597616A (zh) * | 2018-06-13 | 2019-12-20 | 华为技术有限公司 | 一种神经网络的内存分配方法及装置 |
-
2020
- 2020-05-19 CN CN202010424387.9A patent/CN111562988B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180060100A1 (en) * | 2016-08-30 | 2018-03-01 | Red Hat Israel, Ltd. | Virtual Machine Migration Acceleration With Page State Indicators |
CN108229651A (zh) * | 2017-11-28 | 2018-06-29 | 北京市商汤科技开发有限公司 | 神经网络模型迁移方法和系统、电子设备、程序和介质 |
CN110597616A (zh) * | 2018-06-13 | 2019-12-20 | 华为技术有限公司 | 一种神经网络的内存分配方法及装置 |
CN109976903A (zh) * | 2019-02-22 | 2019-07-05 | 华中科技大学 | 一种基于层宽内存分配的深度学习异构计算方法和系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023174013A1 (zh) * | 2022-03-15 | 2023-09-21 | 北京有竹居网络技术有限公司 | 显存分配方法、装置、介质及电子设备 |
CN116226334A (zh) * | 2023-03-03 | 2023-06-06 | 北京百度网讯科技有限公司 | 生成式大语言模型训练方法以及基于模型的搜索方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111562988B (zh) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109902818B (zh) | 一种面向深度学习训练任务的分布式加速方法及系统 | |
CN109947567B (zh) | 一种多智能体强化学习调度方法、系统及电子设备 | |
CN111562988B (zh) | 一种神经网络训练计算的迁移方法和装置 | |
Indurkhya et al. | Optimal partitioning of randomly generated distributed programs | |
CN108021451B (zh) | 一种雾计算环境下的自适应容器迁移方法 | |
CN111930498B (zh) | 一种高效的gpu资源分配优化方法和系统 | |
CN110084363B (zh) | 一种基于fpga平台的深度学习模型加速方法 | |
US11651470B2 (en) | Scheduling jobs on graphical processing units | |
CN104572305A (zh) | 均衡负载的集群渲染任务调度方法 | |
CN111371616B (zh) | 一种面向numa架构服务器的虚拟网络功能链部署方法和系统 | |
CN106502962A (zh) | 电子装置及电子装置中控制处理器核心的操作的方法 | |
WO2024060788A1 (zh) | 面向智能计算的流水并行训练自适应调整系统、方法 | |
CN114282641B (zh) | 一种通用异构加速框架的构建方法 | |
CN114327399A (zh) | 分布式训练方法、装置、计算机设备、存储介质和产品 | |
CN114090239B (zh) | 一种基于模型的强化学习的边缘资源调度方法和装置 | |
Ma et al. | Adaptive stochastic gradient descent for deep learning on heterogeneous CPU+ GPU architectures | |
CN118035618A (zh) | 数据处理器、数据处理方法、电子设备、存储介质 | |
CN117851056A (zh) | 一种基于约束近端策略优化的时变任务调度方法及系统 | |
CN107491352A (zh) | 一种资源调度方法及装置 | |
CN102143206A (zh) | 集群存储系统中存储池的调整方法、装置及系统 | |
US8090762B2 (en) | Efficient super cluster implementation for solving connected problems in a distributed environment | |
CN114723024A (zh) | 用于存算一体芯片的基于线性规划的神经网络映射方法 | |
CN114217807A (zh) | 一种基于异构众核架构的直接内存访问编译优化方法 | |
KR101558807B1 (ko) | 호스트 프로세서와 협업 프로세서 간에 협업 처리를 위한 프로세서 스케줄링 방법 및 그 방법을 수행하는 호스트 프로세서 | |
CN114035795A (zh) | 核函数预编译方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |