CN116258199B - 面向大规模gpu集群的分布式训练时间预测方法及装置 - Google Patents
面向大规模gpu集群的分布式训练时间预测方法及装置 Download PDFInfo
- Publication number
- CN116258199B CN116258199B CN202211610735.7A CN202211610735A CN116258199B CN 116258199 B CN116258199 B CN 116258199B CN 202211610735 A CN202211610735 A CN 202211610735A CN 116258199 B CN116258199 B CN 116258199B
- Authority
- CN
- China
- Prior art keywords
- time
- communication
- gpu
- data
- distributed training
- 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.)
- Active
Links
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了面向大规模GPU集群的分布式训练时间预测方法及装置,方案为:基于GPU的硬件特征和神经网络模型的结构特征建立多层感知器模型,逐层预测分布式训练的计算时间;利用回归分析方法对GPU集群中单链路的通信吞吐量与通信数据量之间的关系进行建模;通过分析通信拓扑和分布式训练算法的执行原理得到集群通信模型,进而预测GPU集群的通信时间;根据计算与通信的并行关系提取出分布式训练的关键路径,基于关键路径得到分布式训练时间。本发明用于在分布式训练任务实际部署到大规模GPU集群之前预测其训练时间,从而指导业界研究人员合理分配GPU资源,避免时间和资源的浪费,同时对分布式训练性能优化也具有指导意义。
Description
技术领域
本发明属于计算机领域,尤其涉及大规模分布式训练性能预测领域,具体涉及一种面向大规模GPU集群的分布式训练时间预测方法及装置。
背景技术
分布式训练已经成为大规模深度神经网络训练的流行方式,尤其是在计算机视觉和自然语言处理领域,为了提高训练速度,神经网络模型需要部署到大规模GPU集群上进行分布式训练。预测分布式训练的时间可以帮助研究人员在不浪费资源的前提下确定合适的GPU集群规模,同时对分布式训练性能优化也具有指导意义。现阶段的分布式训练时间预测方法主要有以下三种:
1、机理建模方法,机理建模需要具备与神经网络、硬件结构特性和平台系统相关的深厚的知识,并在此基础上建立相应的模型。模型可以手动推导或者自动推导得出,手动推导指表示系统性能的数学模型由研究人员自行建立,该方法一般是依赖于特定应用或者硬件结构的;自动推导大多采用基于回归的方法,在指定影响性能的参数和参数之间的关联并建立回归模型之后,通过最小化均方误差的方式得到最终模型,该方法一般对简单的系统比较适用,对于复杂的多核系统需要更复杂的模型,并且随着软件与硬件、计算与通信间的交互越来越复杂,建立精确的模型越来越困难。
2、非机理建模方法,采用机器学习方法建立性能预测模型,如支持向量机、随机森林、人工神经网络等。在指定影响性能的参数之后,改变相应参数值并在实际场景测试得到执行时间的数据,将参数和执行时间数据用于训练机器学习模型,由机器学习方法自动学习参数与性能之间的关系以及参数之间的非线性关系。该方法建模比较简单,但是一般需要大量的测试数据来训练模型,并且由于影响通信时间的大多数参数难以改变,因此不适用于通信时间的建模。
3、仿真建模方法,侧重于分析应用程序源代码,以便对应用程序的特性进行描述,并指定一些参数,这些参数定义了将要模拟的系统的特性,该方法利用这些参数模拟相应系统上应用程序的运行。仿真建模方法通常包括离线仿真和在线仿真,离线仿真基于从已经运行过的程序上收集的踪迹跟踪应用程序的行为,复现计算和通信过程;在线仿真执行应用程序,并将部分运行结果发送给仿真器模拟。该方法能实现较高的预测准确度,但是需要较大的仿真时间和内存需求。
发明内容
针对上述现有技术的不足,本发明提供一种面向大规模GPU集群的分布式训练时间预测方法及装置,目标是实现对GPU集群上分布式训练时间的准确预测,同时具有一定的规模可扩展性,解决难以准确预测在无法获得的大规模GPU集群上进行分布式训练所需时间的问题,指导业界研究人员确定用于分布式训练的合适的GPU集群规模。
本发明的目的是通过以下技术方案实现的:
根据本说明书的第一方面,提供一种面向大规模GPU集群的分布式训练时间预测方法,包括以下步骤:
S1,基于GPU的硬件特征和神经网络模型的结构特征为每种类型的神经网络层建立多层感知器模型;
S2,对特征空间进行随机采样并生成基准测试数据集,训练多层感知器模型并逐层预测分布式训练的计算时间;
S3,利用回归分析方法对GPU集群中单链路的吞吐量与通信数据量之间的关系进行建模,进而预测GPU集群中任意两个GPU之间的通信时间;
S4,基于步骤S3建立的单链路通信模型,分析Ring All-Reduce算法的运行原理,利用小规模GPU集群(GPU数目不大于32)建立通信时间预测模型;
S5,分析通信时间与GPU数目的关系,将利用小规模GPU集群建立的通信时间预测模型扩展到大规模GPU集群(GPU数目大于128),预测在大规模GPU集群上进行分布式训练所需的通信时间;
S6,分析分布式训练中计算与通信的并行关系,提取出分布式训练的关键路径,结合步骤S2中得到的计算时间预测模型与步骤S5中得到的通信时间预测模型,预测大规模GPU集群的分布式训练时间。
进一步地,所述步骤S1中多层感知器模型的构建具体为:
每种类型神经网络层的预测模型由五个全连接层组成,前四个全连接层的神经元数目依次为32、64、128、128,最后一个全连接层为输出层,输出值为预测的计算时间,在训练时,对最后一个全连接层执行dropout操作,以减轻过拟合。
进一步地,所述步骤S2具体为:
将每种类型的神经网络层嵌入到网络中,即搭建一个单层神经网络,每次从特征空间中随机采样一组特征,测量单层神经网络的前向传播和反向传播的时间,每组特征以及对应的测量时间作为一个样本,多次测量得到基准测试数据集;
将得到的基准测试数据集划分为训练集和测试集,标准化后用训练集训练对应的多层感知器模型,用测试集验证模型;然后对部署到大规模GPU集群上的神经网络进行逐层预测,得到分布式训练的计算时间。
进一步地,所述步骤S2中每个样本的测量时间为100次测量结果的平均值。
进一步地,所述步骤S3具体为:
GPU集群中单链路的实时通信吞吐量随通信数据量大小的变化呈现sigmoid分布,即满足:
其中,throughput为实时吞吐量,N为通信数据量,x=log(N)为通信数据量的对数,k,a,w为sigmoid函数的拟合参数。利用实验测量数据,通过回归分析拟合预测模型中的参数,然后根据实时吞吐量与通信时间之间的关系得到单链路通信时间预测值tlink:
tlink=N·β
其中为实时吞吐量的倒数。
进一步地,所述步骤S4中Ring All-Reduce算法具体为:
Ring All-Reduce算法是基于环形拓扑的分布式训练算法,包括scatter-reduce和all-gather两个阶段;
首先是scatter-reduce,在该阶段中,GPU集群会逐步交换彼此的数据并融合,使得每个GPU都会包含完整融合数据的一部分,是最终结果的一个块;假设有n个GPU节点,每个节点有长度相同的数组,需要将节点的数组进行求和;在scatter-reduce阶段,每个节点会先将数组分成n个数据块,然后节点之间进行n-1次数据交换;在第k次数据交换时,第i个节点会将自己的第(i-k)%n个数据块发送给下一个节点,接收到上一个节点的数据块后,节点会将其与自己对应的数据块求和;
然后是all-gather,在该阶段中,GPU集群会逐步交换彼此不完整的融合数据,所有GPU最终都会得到完整的融合数据;在执行完scatter-reduce后,每个节点的数组里都有某个数据块是最终求和的结果,现在需要将各数据块的最后求和结果发送到每个节点上,和scatter-reduce一样,也需要n-1次循环;在第k次循环时,第i个节点会将其第(i+1-k)%n个数据块发送给下一个节点;接收到前一个节点的数据块后,节点会用接收的数据块覆盖自己对应的数据块,进行n-1次循环后,每个节点就拥有了数组各数据块的最终求和结果。
进一步地,所述步骤S4中利用小规模GPU集群(GPU数目不大于32)建立的通信时间预测模型为:
其中n为GPU数目,N为通信数据量,β为根据步骤S3得到的通信吞吐量的倒数。
进一步地,所述步骤S5具体为:
根据Ring All-Reduce算法的原理,p个GPU集群通信数据量大小为m的数据,每次通信的数据量为m/p,需要通信2(p-1)次,设对p个GPU集群建立的通信时间预测模型的预测时间为tp(m);q个GPU集群通信数据量大小为n的数据,q>p,每次需要通信的数据量大小为n/q,因此m的值应设置为满足则/>相应地在p个GPU集群上预测的通信时间为/>由于p个GPU集群通信了2(p-1)次,而q个GPU集群通信2(q-1)次,则q个GPU集群通信数据量大小为n的数据所需的时间tq(n)可以表示为:
进一步地,在所述步骤S6中先为每个节点和节点之间的通信链路维持一个操作队列和一个设备时间,然后根据每个节点计算操作的执行顺序和每个通信链路通信操作的执行顺序,依次更新操作队列和设备时间,最后提取出关键路径,即无阻塞连续执行的操作的最长时间路径用于计算分布式训练所需时间。
根据本说明书的第二方面,提供一种面向大规模GPU集群的分布式训练时间预测装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现如第一方面所述的面向大规模GPU集群的分布式训练时间预测方法。
本发明的有益效果是:
1、由于大规模GPU集群通常无法预先得到,使用本发明方法可以在分布式训练任务实际部署到大规模GPU集群之前预测其训练时间,从而指导业界研究人员合理分配GPU资源,避免时间和资源的浪费。
2、实现对神经网络计算时间的准确预测。
3、克服传统的粗粒度通信建模方法预测精度不高的问题,使用本发明可以实现高精度的通信时间预测。
4、解耦单链路通信模型与集群通信模型,本发明方法可以扩展到任意GPU集群拓扑。
5、解决传统分布式训练时间预测方法面临的规模可扩展性问题,本发明方法可以有效地实现对大规模GPU集群上分布式训练时间的准确预测。
6、无需在线进行分布式训练,本发明方法可以在短时间内获得训练时间的预测结果。
7、适用于各种神经网络模型的分布式训练时间预测。
8、用于计算机视觉和自然语言处理领域,指导研究人员优化神经网络结构和GPU集群通信拓扑结构。
9、考虑了GPU的硬件特征,本发明方法可以对异构GPU集群上的分布式训练的计算时间进行预测。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一示例性实施例提供的面向大规模GPU集群的分布式训练时间预测方法示意图;
图2为一示例性实施例提供的多层感知器模型示意图;
图3为一示例性实施例提供的卷积层和池化层生成基准测试数据的单层神经网络;
图4为一示例性实施例提供的全连接层生成基准测试数据的单层神经网络;
图5为一示例性实施例提供的Ring All-Reduce算法的执行流程图;
图6为一示例性实施例提供的关键路径示意图;
图7为一示例性实施例提供的分布式训练vgg16卷积神经网络的计算时间预测结果;
图8为一示例性实施例提供的分布式训练resnet50卷积神经网络的计算时间预测结果;
图9为一示例性实施例提供的服务器架构示意图;
图10为一示例性实施例提供的GPU集群上Ring All-Reduce算法的通信时间预测结果;
图11为一示例性实施例提供的分布式训练vgg16卷积神经网络的训练时间预测结果;
图12为一示例性实施例提供的分布式训练resnet50卷积神经网络的训练时间预测结果;
图13为一示例性实施例提供的面向大规模GPU集群的分布式训练时间预测装置的结构图。
具体实施方式
为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
对于大规模深度学习任务,特别是计算机视觉和自然语言处理领域,由于数据量很大、神经网络模型很大或者单个GPU设备的计算能力有限,需要将数据或者模型进行切分,部署到GPU集群上进行分布式训练,以加快神经网络模型的训练速度,而这种训练方式涉及设备之间的频繁通信,因此当GPU集群达到一定规模时,随着GPU数目的增加,训练加速效果会越来越差,甚至会出现训练速度变慢的情况,从而导致资源的浪费。分布式训练时间预测的主要目标是尽可能准确地预测在给定GPU集群上进行分布式训练所需的时间,从而在分布式训练任务实际部署到大规模GPU集群之前确定合适的集群规模,避免时间和资源的浪费。由于GPU底层结构十分复杂,若采用机理建模方法预测分布式训练的计算时间,需要分析GPU的执行原理,建立复杂的非线性模型,这在实现上是十分困难的。而采用非机理建模方法可以极大地降低建模难度,由机器学习模型自动学习参数之间以及参数与训练时间之间的非线性关系,但是建模需要大量的基准测试数据,并且对于未知数据的泛化性能难以保证,这为通信时间的建模带来一定难度。此外,传统的仿真建模方法时间开销过大,并且无法处理可扩展性问题。因此,本发明引入一种面向大规模GPU集群的分布式训练时间预测方法,将分布式训练时间划分为计算时间和通信时间,并在建模中融合机理和非机理模型,目标是实现对GPU集群上分布式训练时间的准确预测,同时具有一定的规模可扩展性,解决难以准确预测在无法获得的大规模GPU集群上进行分布式训练所需时间的问题。
如图1所示,在一实施例中,提供了一种面向大规模GPU集群的分布式训练时间预测方法,包括以下步骤:
S1,基于GPU的硬件特征和神经网络模型的结构特征为每种类型的神经网络层建立多层感知器模型;多层感知器模型又可以叫做多层全连接神经网络,结构简单,适合用于各种回归、分类任务,因此作为预测分布式训练计算时间的非机理模型。
在一实施例中,步骤S1中多层感知器模型的构建具体为:
每种类型神经网络层的预测模型由五个全连接层组成,其中前四个全连接层为隐藏层,用于学习输入特征之间的关系,最后一个全连接层为输出层,用于学习隐藏层特征与输出之间的关系,每个全连接层执行如下操作:
Y=W·X+b
其中,W是全连接层的权重矩阵,X是全连接层的输入数据,b是偏置参数,Y是全连接层的输出数据,本实施例中全连接层的神经元数目分别为32、64、128、128,输出层神经元数目为1,为预测的执行时间。其中,每个隐藏层的输出会经过ReLU激活函数,其表达式如下所示,它保证了整个神经网络是非线性且稀疏的。
在一实施例中,训练时,在输出层经过ReLU激活函数之前会以20%的概率对其执行dropout操作以减轻过拟合。构建的多层感知器模型如图2所示。
多层感知器的输入包括GPU的硬件特征和神经网络模型的结构特征。其中本发明考虑的GPU硬件特征见表1。
表1为本发明考虑的GPU硬件特征:
硬件特征 | 单位 |
GPU显存 | GB |
GPU时钟频率 | Hz |
GPU内存带宽 | GB/s |
GPU内核数 | / |
GPU峰值性能 | GPLOPS |
对于不同架构的GPU,上述硬件特征有所不同,通过将上述特征引入到预测模型中,本发明方法可以扩展到任意GPU架构上。
针对不同类型的神经网络层,多层感知器的输入层神经元数目有所不同,为了得到更准确的计算时间预测结果,除了神经网络层的基本特征之外,本发明还将浮点数操作数、输入数据内存占用大小以及输出数据内存占用大小作为多层感知器的输入特征,具体输入特征见表2。
表2为不同类型神经网络层对应的输入特征:
以卷积层为例,对应的多层感知器模型配置参数具体见表3。
表3为多层感知器模型配置:
S2,对特征空间进行随机采样并生成基准测试数据集,训练多层感知器模型并逐层预测分布式训练的计算时间;
在一实施例中,为了得到用于训练多层感知器模型的数据,将每种类型的神经网络层嵌入到网络中,即搭建一个单层神经网络,具体如图3、图4所示。每次从神经网络层的特征空间中随机采样一组特征,测量单层的神经网络的前向传播和反向传播的时间,每组特征以及对应的测量时间作为一个样本,多次测量得到基准测试数据集。特征空间的采样范围见表4、表5和表6。
表4为卷积层特征空间的采样范围:
表5为全连接层特征空间的采样范围:
表6为池化层特征空间的采样范围:
考虑卷积层和池化层下采样的特点,在卷积神经网络处理图像的过程中,图像的大小不断减小,但是通道数不断增加,因此对卷积层和池化层的通道数的采样范围取决于输入图像的大小。
在采样得到神经网络层的基本特征之后,卷积层的浮点数操作数opsconv、卷积核内存占用大小memw、输入数据内存占用大小memin、输出数据内存占用大小memout以及全连接层的浮点数操作数opsdense的计算如下:
opsconv=bmout 2k2cincout
memin=bmin 2cin
memout=bmout 2cout
opsdense=bdindout
其中b为批大小,min为卷积层输入图像大小,mout为卷积层输出图像大小,k为卷积核大小,cin为卷积层输入通道数,cout为卷积层输出通道数,din为全连接层输入数据维度,dout为全连接层输出数据维度。
将得到的基准测试数据划分为训练集和测试集,标准化后用训练集训练对应的多层感知器模型,用测试集验证模型。然后对部署到大规模GPU集群上的神经网络进行逐层预测,得到分布式训练的计算时间:
其中l为神经网络的层数,bM(i)为预测的第i层的计算时间,M(i)为神经网络第i层的类型,为第i层模型的输入特征。
在一实施例中,步骤S3中每个样本的测量时间为100次测量结果的平均值。
S3,利用回归分析方法对GPU集群中单链路的吞吐量与通信数据量之间的关系进行建模,进而预测GPU集群中任意两个GPU之间的通信时间;
在一实施例中,步骤S3具体为:
GPU集群中单链路的实时通信吞吐量随通信数据量大小的变化呈现sigmoid分布,即满足:
其中,throughput为实时吞吐量,N为通信数据量,x=log(N)为通信数据量的对数,k,a,w为sigmoid函数的拟合参数。利用实验测量数据,通过回归分析拟合预测模型中的参数,然后根据实时吞吐量与通信时间之间的关系得到单链路通信时间预测值tlink:
tlink=N·β
其中为实时吞吐量的倒数。
S4,基于步骤S3建立的单链路通信模型,分析Ring All-Reduce算法的运行原理,利用小规模GPU集群(GPU数目不大于32)建立通信时间预测模型;
在一实施例中,GPU集群上的通信基于Ring All-Reduce算法实现,Ring All-Reduce算法是一种在环形集群拓扑上实现全局数据通信的方法,包括分散规约(scatter-reduce)和全收集(all-gather)两个阶段;
首先是scatter-reduce,在该阶段中,GPU集群会逐步交换彼此的数据并融合,使得每个GPU都会包含完整融合数据的一部分,是最终结果的一个块;假设有n个GPU节点,每个节点有长度相同的数组,需要将节点的数组进行求和;在scatter-reduce阶段,每个节点会先将数组分成n个数据块,然后节点之间进行n-1次数据交换;在第k次数据交换时,第i个节点会将自己的第(i-k)%n个数据块发送给下一个节点,接收到上一个节点的数据块后,节点会将其与自己对应的数据块求和;
然后是all-gather,在该阶段中,GPU集群会逐步交换彼此不完整的融合数据,所有GPU最终都会得到完整的融合数据;在执行完scatter-reduce后,每个节点的数组里都有某个数据块是最终求和的结果,现在需要将各数据块的最后求和结果发送到每个节点上,和scatter-reduce一样,也需要n-1次循环;在第k次循环时,第i个节点会将其第(i+1-k)%n个数据块发送给下一个节点;接收到前一个节点的数据块后,节点会用接收的数据块覆盖自己对应的数据块,进行n-1次循环后,每个节点就拥有了数组各数据块的最终求和结果。
在一实施例中,Ring All-Reduce算法的执行流程如图5所示。
基于环形通信拓扑的结构特点和Ring All-Reduce算法的执行原理,得到如下通信时间预测模型:
/>
其中n为GPU数目,N为通信数据量,β为根据步骤S3得到的通信吞吐量的倒数。
S5,分析通信时间与GPU数目的关系,将利用小规模GPU集群建立的通信时间预测模型扩展到大规模GPU集群(GPU数目大于128),预测在大规模GPU集群上进行分布式训练所需的通信时间;
在一实施例中,根据Ring All-Reduce算法的原理,在物理通信链路相同的情况下,利用小规模GPU集群建立的通信时间预测模型,保证每次通信数据量与待预测大规模GPU集群相同,即可实现对更大规模GPU集群的通信时间的预测。用p个GPU建立的模型预测q(q>p)个GPU集群上的通信时间的原理如下:
p个GPU集群通信数据量大小为m的数据,每次通信的数据量为m/p,需要通信2(p-1)次,设对p个GPU集群建立的通信时间预测模型的预测时间为tp(m);q个GPU集群通信数据量大小为n的数据,每次需要通信的数据量大小为n/q,因此m的值应设置为满足则相应地在p个GPU集群上预测的通信时间为/>由于p个GPU集群通信了2(p-1)次,而q个GPU集群通信2(q-1)次,则q个GPU集群通信数据量大小为n的数据所需的时间tq(n)可以表示为:
S6,分析分布式训练中计算与通信的并行关系,提取出分布式训练的关键路径,结合步骤S2中得到的计算时间预测模型与步骤S5中得到的通信时间预测模型,预测大规模GPU集群的分布式训练时间。
在一实施例中,建立了计算时间预测模型和通信时间预测模型之后,大规模GPU集群上的分布式训练时间可以表示为:
t=f(tcomp,tcomm)
其中tcomp为计算时间,tcomm为通信时间,f(·)表示由分布式训练算法决定的计算与通信之间的并行关系。一般情况下,分布式训练时间为计算时间与通信时间的求和,而部分深度学习框架所实现的Ring All-Reduce算法中,通常会对通信策略进行优化以提高计算与通信的并行性,即在每一层反向传播计算结束后立即对该层梯度进行通信,并且不会阻塞下一层的反向传播过程,从而将计算时间和通信时间重叠,减少整体训练时间。在这种情况下,分布式训练时间并不是计算时间和通信时间的简单求和,为了建模计算与通信的并行关系,作以下几点假设:
·神经网络第l层反向传播计算梯度与第l-1层反向传播计算独立,因此可以并行执行而不会相互阻塞;
·第l层反向传播计算结束后,即可接收其他节点发送过来的梯度计算平均值并更新该层参数,而不会阻塞第l-1层的反向传播计算;
·同步算法中GPU之间通信的开始时刻严格同步。
如图6所示,采用如下方法预测分布式训练的时间:
1)首先,为每个GPU节点和节点之间的通信链路维持一个操作队列和一个设备时间;
2)根据每个节点计算操作的执行顺序和每个通信链路通信操作的执行顺序将操作依次加入到对应的队列中,其中通信操作依赖于对应的计算操作,即通信操作qi需要在计算操作pi后加入队列中。并且考虑到不同GPU的计算能力不同,在同步算法中,通信操作需要等待两个节点中与之对应的计算操作都执行结束才会加入到队列中;
3)每个操作加入到队列后,更新对应节点或通信链路的设备时间;
4)根据操作加入到队列前后的设备时间,确定一条无阻塞连续执行的操作的最长时间路径用于计算分布式训练所需时间,如图6所示,虚线框为关键路径,对应的预测时间为:
其中tij为节点i和节点j之间通信链路最终的设备时间,为计算操作pi的执行时间,/>为通信操作qi的执行时间。
本发明提出的面向大规模GPU集群的分布式训练时间预测方法,实现了神经网络结构、GPU集群规模和集群通信拓扑的可扩展性,解决了难以准确预测大规模GPU集群上分布式训练时间的问题。本发明的关键思路是,在计算时间建模中,对不同类型的神经网络层建立不同的多层感知器模型,通过逐层预测的方法实现对GPU集群上分布式训练任意神经网络模型计算时间的预测;另外将GPU的硬件特征以及神经网络层的内存占用大小和浮点数操作数引入到模型中,进一步提高了预测模型的精度。在通信时间建模中,将单链路通信模型与集群通信模型解耦,同时在建立单链路通信模型时考虑实时吞吐量与通信数据量之间的关系,实现对大规模GPU集群上的通信时间的准确预测。这些改进提高了对大规模GPU集群上分布式训练时间预测的精度,解决了在大规模GPU集群上实际部署分布式训练任务时间开销过大的问题,帮助研究人员在实际部署前确定用于分布式训练的合适的集群规模。
本实施例在由8块2080Ti组成的GPU集群上利用建立的预测模型预测了分布式训练Vgg16和Resnet50处理不同批大小样本所需的训练时间,Vgg16和Resnet50为深度学习中常用的卷积神经网络,在计算机视觉领域得到了广泛的应用,并且分布式训练中也常用这两种模型进行图像分类等任务,其模型结构见表7。
表7为vgg16和resnet50模型结构:
下面是实施的实验细节:
首先,对于计算时间预测,本发明分别对卷积层、全连接层、池化层和批归一化层进行特征空间采样,每种类型的神经网络层得到80000条基准测试数据,然后将特征空间采样得到的基准测试数据按8:2的比例划分为训练集和测试集,用训练集训练对应的多层感知器模型,用测试集验证模型,得到不同类型神经网络层的预测模型。
然后根据vgg16和resnet50的模型结构,利用训练好的多层感知器模型逐层预测前向传播和反向传播计算时间,进而累加得到整体计算时间,其中输入图像大小为224×224×3,批大小分别为[2,4,8,16,32],优化算法采用随机梯度下降算法,学习率为0.0001,得到图7和图8所示的预测结果。进一步地,计算两种模型的预测误差,结果如表8所示。
表8为神经网络计算时间预测结果:
预测模型 | 均方误差 | 相对误差 |
Vgg16 | 10.386ms | 5.089% |
Resnet50 | 4.929ms | 9.947% |
从表9、图7和图8的实验结果可以看到,对于Vgg16和Resnet50这样的顺序和带分支的卷积神经网络,本发明的预测模型均能够以较低的预测误差预测其分布式训练所需的计算时间。
对于通信时间预测,本发明使用图9所示的服务器架构,其中GPU之间的连接方式有三种:通过PCIe(计算机扩展总线标准)开关连接、通过根复合体(root complex)连接和跨CPU连接。本发明分别对2个GPU和5个GPU上Ring All-Reduce算法的通信时间建模,并利用建立的模型预测8个GPU上Ring All-Reduce算法的通信时间,其中在2个GPU上分别建立了三种通信链路的通信时间预测模型,在实际预测时通信时间取决于最慢的通信链路,5个GPU建立的预测模型则同时考虑了三种通信链路,因此可以直接扩展到8个GPU。除此之外,本发明还直接对8个GPU上Ring All-Reduce算法的通信时间建立预测模型。预测结果如表9和图10所示。
表9通信时间预测误差
由实验结果可知,本发明提出的通信时间预测模型能较好地预测出通信时间随通信数据量的变化趋势,并且具有一定的规模可扩展性,在5个GPU上建立的通信时间预测模型结合了拓扑中的三种通信链路,达到了与直接在8个GPU上建立的预测模型相近的误差大小。由于设备有限,本发明并未对更大规模GPU集群进行验证,但通过模型分析可知,对于更大规模的GPU集群上的通信时间,只需要在建模时将服务器之间跨交换机通信的链路考虑进来就可以实现扩展预测。
最后,结合计算时间和通信时间,得到当批大小分别为[2,4,8,16,32]时,在GPU集群上分布式训练vgg16和resnet50所需训练时间的预测结果,如图11、图12和表10所示。可以发现本发明提出的面向大规模GPU集群的分布式训练时间预测方法能够以较低的误差预测分布式训练时间。
表10分布式训练迭代时间预测结果
预测模型 | 均方误差 | 相对误差 |
Vgg16 | 11.506ms | 2.796% |
Resnet50 | 4.067ms | 2.922% |
根据以上实验结果可以发现:
1、本发明对每种类型的神经网络层都建立了对应的多层感知器模型,利用逐层预测的方法可以预测分布式训练任意神经网络模型的计算时间,并且支持新类型的神经网络层的引入,对其建立对应的多层感知器模型即可,具有很好的模型扩展性。
2、在多层感知器模型构建时引入浮点数运算次数、输入输出内存占用大小、卷积核内存占用大小等特征作为额外的输入参数,进一步提高了分布式训练计算时间的预测精度。
3、在多层感知器模型构建时考虑了GPU的硬件特征,使得预测模型可以扩展到任意架构的GPU,进而对异构GPU集群上的分布式训练的计算时间进行预测。
4、生成基准测试数据时,特征空间的采样范围充分考虑了实际应用中可能出现的范围,保证了预测模型的泛化性能。
5、本发明考虑了通信吞吐量随通信数据量的变化,并将其作为实时通信带宽引入到单链路通信时间预测模型中,符合实际分布式训练中通信带宽的变化情况。
6、将单链路通信模型与集群通信模型解耦,可以扩展到任意集群通信拓扑。
7、针对Ring All-Reduce算法的特点实现了利用小规模GPU集群上建立的通信模型预测大规模GPU集群上的通信时间,具有很好的规模可扩展性。
8、本发明方法针对深度学习框架中的通信策略引入关键路径分析方法,可以很好地建模计算与通信的重叠关系,准确地预测分布式训练所需时间。
9、本发明方法设计的预测模型结构简单,可以在短时间内预测大规模集群上分布式训练的时间。
10、本发明支持对大规模GPU集群上分布式训练的时间进行预测,只需要在通信建模时将跨服务器的通信链路考虑进来即可,对工业界分布式训练的部署具有指导意义。
根据本说明书的第二方面,提供一种面向大规模GPU集群的分布式训练时间预测装置,包括存储器和一个或多个处理器,存储器中存储有可执行代码,处理器执行可执行代码时,用于实现如第一方面的面向大规模GPU集群的分布式训练时间预测方法。
与前述面向大规模GPU集群的分布式训练时间预测方法的实施例相对应,本发明还提供了面向大规模GPU集群的分布式训练时间预测装置的实施例。
参见图13,本发明实施例提供的一种面向大规模GPU集群的分布式训练时间预测装置,包括存储器和一个或多个处理器,存储器中存储有可执行代码,处理器执行可执行代码时,用于实现上述实施例中的面向大规模GPU集群的分布式训练时间预测方法。
本发明面向大规模GPU集群的分布式训练时间预测装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图13所示,为本发明面向大规模GPU集群的分布式训练时间预测装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图13所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的面向大规模GPU集群的分布式训练时间预测方法。
计算机可读存储介质可以是前述任一实施例的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。计算机可读存储介质用于存储计算机程序以及任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (10)
1.一种面向大规模GPU集群的分布式训练时间预测方法,其特征在于,包括以下步骤:
S1,基于GPU的硬件特征和神经网络模型的结构特征为每种类型的神经网络层建立多层感知器模型;
S2,对特征空间进行随机采样并生成基准测试数据集,训练多层感知器模型并逐层预测分布式训练的计算时间;
S3,利用回归分析方法对GPU集群中单链路的吞吐量与通信数据量之间的关系进行建模,进而预测GPU集群中任意两个GPU之间的通信时间;
S4,基于步骤S3建立的单链路通信模型,分析Ring All-Reduce算法的运行原理,利用小规模GPU集群,即GPU数目不大于32,建立通信时间预测模型;
S5,分析通信时间与GPU数目的关系,将利用小规模GPU集群建立的通信时间预测模型扩展到大规模GPU集群,即GPU数目大于128,预测在大规模GPU集群上进行分布式训练所需的通信时间;
S6,分析分布式训练中计算与通信的并行关系,提取出分布式训练的关键路径,结合步骤S2中得到的计算时间预测模型与步骤S5中得到的通信时间预测模型,预测大规模GPU集群的分布式训练时间。
2.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S1中多层感知器模型的构建具体为:
每种类型神经网络层的预测模型由五个全连接层组成,前四个全连接层的神经元数目依次为32、64、128、128,最后一个全连接层为输出层,输出值为预测的计算时间,在训练时,对最后一个全连接层执行dropout操作,以减轻过拟合。
3.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S2具体为:
将每种类型的神经网络层嵌入到网络中,即搭建一个单层神经网络,每次从特征空间中随机采样一组特征,测量单层神经网络的前向传播和反向传播的时间,每组特征以及对应的测量时间作为一个样本,多次测量得到基准测试数据集;
将得到的基准测试数据集划分为训练集和测试集,标准化后用训练集训练对应的多层感知器模型,用测试集验证模型;然后对部署到大规模GPU集群上的神经网络进行逐层预测,得到分布式训练的计算时间。
4.根据权利要求3所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S2中每个样本的测量时间为100次测量结果的平均值。
5.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S3具体为:
GPU集群中单链路的实时通信吞吐量随通信数据量大小的变化呈现sigmoid分布,即满足:
其中,throughput为实时吞吐量,N为通信数据量,x=log(N)为通信数据量的对数,k,a,w为sigmoid函数的拟合参数,利用实验测量数据,通过回归分析拟合预测模型中的参数,然后根据实时吞吐量与通信时间之间的关系得到单链路通信时间预测值tlink:
tlink=N·β
其中为实时吞吐量的倒数。
6.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S4中Ring All-Reduce算法具体为:
Ring All-Reduce算法是基于环形拓扑的分布式训练算法,包括scatter-reduce和all-gather两个阶段;
首先是scatter-reduce,在该阶段中,GPU集群会逐步交换彼此的数据并融合,使得每个GPU都会包含完整融合数据的一部分,是最终结果的一个块;假设有n个GPU节点,每个节点有长度相同的数组,需要将节点的数组进行求和;在scatter-reduce阶段,每个节点会先将数组分成n个数据块,然后节点之间进行n-1次数据交换;在第k次数据交换时,第i个节点会将自己的第(i-k)%n个数据块发送给下一个节点,接收到上一个节点的数据块后,节点会将其与自己对应的数据块求和;
然后是all-gather,在该阶段中,GPU集群会逐步交换彼此不完整的融合数据,所有GPU最终都会得到完整的融合数据;在执行完scatter-reduce后,每个节点的数组里都有某个数据块是最终求和的结果,现在需要将各数据块的最后求和结果发送到每个节点上,和scatter-reduce一样,也需要n-1次循环;在第k次循环时,第i个节点会将其第(i+1-k)%n个数据块发送给下一个节点;接收到前一个节点的数据块后,节点会用接收的数据块覆盖自己对应的数据块,进行n-1次循环后,每个节点就拥有了数组各数据块的最终求和结果。
7.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S4中利用小规模GPU集群建立的通信时间预测模型为:
其中n为GPU数目,N为通信数据量,β为根据权利要求5所述方法得到的通信吞吐量的倒数。
8.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,所述步骤S5具体为:
根据Ring All-Reduce算法的原理,p个GPU集群通信数据量大小为m的数据,每次通信的数据量为m/p,需要通信2(p-1)次,设对p个GPU集群建立的通信时间预测模型的预测时间为tp(m);q个GPU集群通信数据量大小为n的数据,q>p,每次需要通信的数据量大小为n/q,因此m的值应设置为满足则/>相应地在p个GPU集群上预测的通信时间为由于p个GPU集群通信了2(p-1)次,而q个GPU集群通信2(q-1)次,则q个GPU集群通信数据量大小为n的数据所需的时间tq(n)可以表示为:
。
9.根据权利要求1所述的面向大规模GPU集群的分布式训练时间预测方法,其特征在于,在所述步骤S6中先为每个节点和节点之间的通信链路维持一个操作队列和一个设备时间,然后根据每个节点计算操作的执行顺序和每个通信链路通信操作的执行顺序,依次更新对应操作队列和设备时间,最后提取出关键路径,即无阻塞连续执行的操作的最长时间路径用于计算分布式训练所需时间。
10.一种面向大规模GPU集群的分布式训练时间预测装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,其特征在于,所述处理器执行所述可执行代码时,用于实现如权利要求1-9中任一项所述的面向大规模GPU集群的分布式训练时间预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211610735.7A CN116258199B (zh) | 2022-12-14 | 2022-12-14 | 面向大规模gpu集群的分布式训练时间预测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211610735.7A CN116258199B (zh) | 2022-12-14 | 2022-12-14 | 面向大规模gpu集群的分布式训练时间预测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116258199A CN116258199A (zh) | 2023-06-13 |
CN116258199B true CN116258199B (zh) | 2023-10-10 |
Family
ID=86685319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211610735.7A Active CN116258199B (zh) | 2022-12-14 | 2022-12-14 | 面向大规模gpu集群的分布式训练时间预测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116258199B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190351A (zh) * | 2021-05-06 | 2021-07-30 | 天津大学 | 一种面向分布式深度学习训练任务的高效资源分配系统 |
CN113792875A (zh) * | 2021-09-09 | 2021-12-14 | 曙光信息产业(北京)有限公司 | 一种分布式通信库的性能测试方法、装置、设备及介质 |
CN113887717A (zh) * | 2021-09-01 | 2022-01-04 | 杭州电子科技大学 | 一种基于深度学习预测神经网络训练时长的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101594915B1 (ko) * | 2014-01-23 | 2016-02-17 | 서울대학교산학협력단 | 매니코어 클러스터 시스템 상에서 병렬 프로그래밍을 수행하는 방법 및 매니코어 클러스터 시스템 |
-
2022
- 2022-12-14 CN CN202211610735.7A patent/CN116258199B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190351A (zh) * | 2021-05-06 | 2021-07-30 | 天津大学 | 一种面向分布式深度学习训练任务的高效资源分配系统 |
CN113887717A (zh) * | 2021-09-01 | 2022-01-04 | 杭州电子科技大学 | 一种基于深度学习预测神经网络训练时长的方法 |
CN113792875A (zh) * | 2021-09-09 | 2021-12-14 | 曙光信息产业(北京)有限公司 | 一种分布式通信库的性能测试方法、装置、设备及介质 |
Non-Patent Citations (3)
Title |
---|
Characterization and Prediction of Deep LearningWorkloads in Large-Scale GPU Datacenters;Qinghao Hu et al.;《ACM》;全文 * |
Efficient Large-Scale Language Model Training on GPU Clusters Using Megatron-LM;Deepak Narayanan et al.;《ACM》;全文 * |
GPU集群能耗优化控制模型研究;王海峰 等;《电子学报》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116258199A (zh) | 2023-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210383235A1 (en) | Neural networks with subdomain training | |
EP4036803A1 (en) | Neural network model processing method and apparatus, computer device, and storage medium | |
US20200265301A1 (en) | Incremental training of machine learning tools | |
US11650968B2 (en) | Systems and methods for predictive early stopping in neural network training | |
CN112084038B (zh) | 神经网络的内存分配方法及装置 | |
US20220027738A1 (en) | Distributed synchronous training architecture using stale weights | |
WO2022068623A1 (zh) | 一种模型训练方法及相关设备 | |
US20230196202A1 (en) | System and method for automatic building of learning machines using learning machines | |
CN114127740A (zh) | 人工智能模型的分布式训练中的数据并行性 | |
CN110414627A (zh) | 一种模型的训练方法及相关设备 | |
CN111047078B (zh) | 交通特征预测方法、系统及存储介质 | |
CN114127702A (zh) | 在存储器受限设备上执行大型人工智能模型 | |
WO2022083624A1 (zh) | 一种模型的获取方法及设备 | |
CN116450486B (zh) | 多元异构计算系统内节点的建模方法、装置、设备及介质 | |
WO2020209860A1 (en) | Leveraging lagging gradients in machine-learning model training | |
CN116629352A (zh) | 一种亿级参数寻优平台 | |
CN114638048A (zh) | 三维喷管流场快速预测与敏感性参数分析方法及装置 | |
CN116569182A (zh) | 具有用以优化经生成以用于在人工神经网络的深度学习加速器上执行的指令的人工神经网络的编译器 | |
CN116258199B (zh) | 面向大规模gpu集群的分布式训练时间预测方法及装置 | |
CN114565092A (zh) | 一种神经网络结构确定方法及其装置 | |
CN115544307A (zh) | 基于关联矩阵的有向图数据特征提取与表达方法和系统 | |
Egele et al. | Asynchronous distributed bayesian optimization at hpc scale | |
CN113240094A (zh) | 一种基于svm的lstm超参数优化方法、系统、介质及设备 | |
CN110415006B (zh) | 广告点击率预估方法和装置 | |
CN112667591A (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 |