System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机,尤其涉及一种gpu系统的控制方法、装置、电子设备和存储介质。
技术介绍
1、目前,为了减少大模型的训练时间,通常采用多个gpu(graphics processingunit,图形处理器)进行分布式训练。在分布式训练中,通常采用模型并行、数据并行、参数服务器等方式。它们的共同点是需要同步参数,这是因为这些并行计算方法都将模型分成多个部分,在多个计算节点上并行计算,每个计算节点计算自己负责的部分,然后将计算结果传递给主节点进行汇总和更新。
2、为了保证模型收敛性能和训练效果,这些并行计算方法需要在约定的时间点同步模型参数。例如,在数据并行的方案中,采用通信和计算的异步流水实现方式。在异步流水实现方式中,数据并行中的梯度通信是在训练的反向传播过程中进行的,而梯度通信后得到的同步梯度在训练的更新过程中才被使用,在反向传播中没有被使用。也就是说,上一个梯度的通信与下一个梯度的计算之间没有依赖,通信和计算可以并行,由此使两者的耗时相互重叠掩盖,从而减少反向传播的耗时。
3、其中,通信和计算的并行通常是通过将通信算子和计算算子调度到不同的流(stream)上实现的。通信算子调度到通信流,计算算子调度到计算流,同一个流上的算子间是顺序执行的,不同流上的算子可以并行执行,从而实现梯度通信和计算的并行。
4、然而,即使采用上述的异步流水实现方式,在分布式训练的过程中,大模型的数据同步依然会成为大模型训练的性能瓶颈。
技术实现思路
1、本公开提供了
2、根据本公开的一方面,提供了一种gpu系统的控制方法,所述gpu系统包括至少两个gpu,所述方法包括:
3、获取用于训练目标模型的训练样本集;
4、对于所述gpu系统中的任一gpu,获得所述gpu的目标功耗和当前功耗;
5、响应于进入新的训练样本分配周期,根据所述目标功耗和所述当前功耗,确定所述gpu对应的目标批大小,并向所述gpu分配所述目标批大小对应的目标训练样本批次,以通过所述gpu根据所述目标训练样本批次训练所述目标模型。
6、在一种可能的实现方式中,在所述获得所述gpu的目标功耗和当前功耗之后,所述方法还包括:
7、响应于进入新的频率调整周期,根据所述目标功耗和所述当前功耗,确定所述gpu的目标工作频率,并根据所述目标工作频率调整所述gpu的工作频率;
8、其中,所述训练样本分配周期包括多个所述频率调整周期。
9、在一种可能的实现方式中,所述获得所述gpu的目标功耗,包括:
10、获取所述gpu的当前温度;
11、根据所述gpu的当前温度,确定所述gpu的目标功耗。
12、在一种可能的实现方式中,所述根据所述gpu的当前温度,确定所述gpu的目标功耗,包括:
13、响应于所述gpu处于温度控制状态,根据所述gpu的当前温度,确定所述gpu的目标功耗。
14、在一种可能的实现方式中,所述响应于所述gpu处于温度控制状态,根据所述gpu的当前温度,确定所述gpu的目标功耗,包括:
15、响应于所述gpu处于温度控制状态,通过第一比例积分微分控制器处理所述gpu的当前温度,得到所述gpu的目标功耗。
16、在一种可能的实现方式中,所述根据所述gpu的当前温度,确定所述gpu的目标功耗,还包括:
17、响应于根据所述当前温度确定所述gpu不处于所述温度控制状态,根据预设功耗,确定所述gpu的目标功耗。
18、在一种可能的实现方式中,所述响应于进入新的训练样本分配周期,根据所述目标功耗和所述当前功耗,确定所述gpu对应的目标批大小,包括:
19、响应于进入新的训练样本分配周期,确定所述目标功耗与所述当前功耗之间的差值;
20、通过第二比例积分微分控制器处理所述差值,得到所述gpu对应的目标批大小。
21、在一种可能的实现方式中,所述响应于进入新的频率调整周期,根据所述目标功耗和所述当前功耗,确定所述gpu的目标工作频率,包括:
22、响应于进入新的频率调整周期,确定所述目标功耗与所述当前功耗之间的差值;
23、通过第三比例积分微分控制器处理所述差值,得到所述gpu的目标工作频率。
24、在一种可能的实现方式中,所述方法还包括:
25、从所述至少两个gpu获取所述至少两个gpu通过训练所述目标模型获得的至少两项梯度;
26、根据所述至少两个gpu对应的批大小,确定所述至少两项梯度对应的至少两项权重,其中,任意一项梯度对应的权重与所述梯度对应的批大小正相关;
27、根据所述至少两项权重,对所述至少两项梯度进行加权,得到目标梯度;
28、根据所述目标梯度更新所述目标模型的参数。
29、在一种可能的实现方式中,所述方法还包括:
30、响应于所述gpu的当前温度大于预设的控制温度,控制所述gpu进入温度控制状态;
31、或者,
32、响应于所述gpu的当前温度小于或等于预设的退出温度,控制所述gpu退出所述温度控制状态,其中,所述预设的退出温度小于所述预设的控制温度。
33、根据本公开的一方面,提供了一种gpu系统的控制装置,所述gpu系统包括至少两个gpu,所述装置包括:
34、第一获取模块,用于获取用于训练目标模型的训练样本集;
35、获得模块,用于对于所述gpu系统中的任一gpu,获得所述gpu的目标功耗和当前功耗;
36、第一确定模块,用于响应于进入新的训练样本分配周期,根据所述目标功耗和所述当前功耗,确定所述gpu对应的目标批大小,并向所述gpu分配所述目标批大小对应的目标训练样本批次,以通过所述gpu根据所述目标训练样本批次训练所述目标模型。
37、在一种可能的实现方式中,所述装置还包括:
38、第二确定模块,用于响应于进入新的频率调整周期,根据所述目标功耗和所述当前功耗,确定所述gpu的目标工作频率,并根据所述目标工作频率调整所述gpu的工作频率;
39、其中,所述训练样本分配周期包括多个所述频率调整周期。
40、在一种可能的实现方式中,所述获得模块用于:
41、获取所述gpu的当前温度;
42、根据所述gpu的当前温度,确定所述gpu的目标功耗。
43、在一种可能的实现方式中,所述获得模块用于:
44、响应于所述gpu处于温度控制状态,根据所述gpu的当前温度,确定所述gpu的目标功耗。
45、在一种可能的实现方式中,所述获得模块用于:
46、响应于所述gpu处于温度控制状态,通过第一比例积分微分控制器处理所述gpu的当前温度,得到所述gpu的目标功耗。
<本文档来自技高网...【技术保护点】
1.一种GPU系统的控制方法,其特征在于,所述GPU系统包括至少两个GPU,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述获得所述GPU的目标功耗和当前功耗之后,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述获得所述GPU的目标功耗,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述GPU的当前温度,确定所述GPU的目标功耗,包括:
5.根据权利要求4所述的方法,其特征在于,所述响应于所述GPU处于温度控制状态,根据所述GPU的当前温度,确定所述GPU的目标功耗,包括:
6.根据权利要求3所述的方法,其特征在于,所述根据所述GPU的当前温度,确定所述GPU的目标功耗,还包括:
7.根据权利要求1至6中任意一项所述的方法,其特征在于,所述响应于进入新的训练样本分配周期,根据所述目标功耗和所述当前功耗,确定所述GPU对应的目标批大小,包括:
8.根据权利要求2所述的方法,其特征在于,所述响应于进入新的频率调整周期,根据所述目标功耗和所述当前功耗,确定所述
9.根据权利要求1至6中任意一项所述的方法,其特征在于,所述方法还包括:
10.根据权利要求3至6中任意一项所述的方法,其特征在于,所述方法还包括:
11.一种GPU系统的控制装置,其特征在于,所述GPU系统包括至少两个GPU,所述装置包括:
12.一种电子设备,其特征在于,包括:
13.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至10中任意一项所述的方法。
...【技术特征摘要】
1.一种gpu系统的控制方法,其特征在于,所述gpu系统包括至少两个gpu,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述获得所述gpu的目标功耗和当前功耗之后,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述获得所述gpu的目标功耗,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述gpu的当前温度,确定所述gpu的目标功耗,包括:
5.根据权利要求4所述的方法,其特征在于,所述响应于所述gpu处于温度控制状态,根据所述gpu的当前温度,确定所述gpu的目标功耗,包括:
6.根据权利要求3所述的方法,其特征在于,所述根据所述gpu的当前温度,确定所述gpu的目标功耗,还包括:
7.根据权利要求1至6中任意一项所述的方法,其特征在...
【专利技术属性】
技术研发人员:请求不公布姓名,
申请(专利权)人:摩尔线程智能科技北京有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。