掌桥专利:专业的专利平台
掌桥专利
首页

确定逻辑核布局的方法、模型训练方法、电子设备、介质

文献发布时间:2023-06-19 09:38:30


确定逻辑核布局的方法、模型训练方法、电子设备、介质

技术领域

本公开实施例涉及计算机技术领域,特别涉及一种确定逻辑核布局的方法、一种布局模型的训练方法、一种确定逻辑核布局的方法、一种电子设备、一种计算机可读介质。

背景技术

众核架构是一种广泛应用于执行神经网络模型的并行处理架构。如图1所示,在众核架构中,每个物理核都能完成一定的计算功能,一定数量的物理核通过一定拓扑结构连接构成一个芯片,一定数量的芯片通过一定拓扑结构连接构成一个芯片阵列板,以此类推,可以扩展得到更大规模的系统。

通过以下步骤将神经网络模型部署到众核架构:(1)将神经网络模型拆分映射为一个逻辑核计算图,逻辑核计算图由多个逻辑核通过一定拓扑结构连接构成;(2)将逻辑核布局到物理核。

在一些相关技术中,将神经网络模型部署到众核架构的方案的效果不够理想。

发明内容

本公开实施例提供一种确定逻辑核布局的方法、一种布局模型的训练方法、一种确定逻辑核布局的方法、一种电子设备、一种计算机可读介质。

第一方面,本公开实施例提供一种确定逻辑核布局的方法,用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述方法包括:

基于强化学习方式更新第一神经网络的参数,以根据第一神经网络得到目标布局;所述第一神经网络配置为根据当前时间步的布局状态数据生成布局动作。

在一些实施例中,基于强化学习方式更新第一神经网络的参数的步骤之前,所述方法还包括:

确定数据化表征结构,所述数据化表征结构表征多个物理核的拓扑和逻辑核与物理核的映射关系,所述当前时间步的布局状态数据符合所述数据化表征结构。

在一些实施例中,所述基于强化学习方式更新第一神经网络的参数的步骤包括:

根据当前时间步的布局状态数据,通过所述第一神经网络生成所述当前时间步的布局动作;

根据所述当前时间步的收益参数更新所述第一神经网络参数,以增大所述当前时间步的收益参数的预期;所述收益参数至少包括所述当前时间步的布局状态的实际收益;

判断学习终止条件是否满足,若是则学习结束,若否则返回所述通过所述第一神经网络生成所述当前时间步的布局动作的步骤。

在一些实施例中,所述根据所述当前时间步的收益参数更新所述第一神经网络参数,以增大所述当前时间步的收益参数的预期包括:

根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,通过第二神经网络确定所述当前时间步的整体收益;

根据所述当前时间步的整体收益更新所述第二神经网络的参数,以使所述当前时间步的整体收益逼近所述当前时间步的累计收益的预期,所述当前时间步的累计收益由所述当前时间步的实际收益和所有后续时间步的实际收益确定;

根据所述当前时间步的整体收益更新所述第一神经网络参数,以增大所述当前时间步的整体收益的预期。

在一些实施例中,所述方法还包括:

根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,确定所述当前时间步的实际收益。

在一些实施例中,根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,确定所述当前时间步的实际收益的步骤包括:

在所述当前时间步存在未布局到物理核上的逻辑核的情况下,将预定收益值确定为所述当前时间步的实际收益;

在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,根据所述当前时间步的布局状态的运行性能确定所述当前时间步的实际收益。

在一些实施例中,所述运行性能包括延迟、吞吐量、功耗中的至少一者。

在一些实施例中,所述当前时间步的累计收益等于当前时间步的实际收益和后续每一时间步的实际收益通过后续每一时间步的折现系数加权后的和,所述折现系数表征后续时间步的布局动作对所述当前时间步的整体收益的影响的大小。

在一些实施例中,后续每一个时间步的折现系数逐个递减。

在一些实施例中,判断学习终止条件是否满足的步骤包括:

判断所述当前时间步是否存在未布局到物理核上的逻辑核;

在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,判断迭代终止条件是否满足;

在所述迭代终止条件满足的情况下,判定所述学习终止条件满足。

在一些实施例中,所述迭代终止条件满足包括所述当前时间步的迭代次数达到预定迭代次数、所述当前时间步的整体收益达到预定收益值、所述第一神经网络的参数和所述第二神经网络的参数收敛中的至少一者。

在一些实施例中,所述方法还包括:

根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,生成下一时间步的布局状态数据;

在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,判断所述下一时间步的布局状态数据表征的布局的运行性能是否优于所述当前时间步的最优布局的运行性能;

在所述下一时间步的布局状态数据表征的布局的运行性能优于所述当前时间步的最优布局的运行性能的情况下,将所述下一时间步的布局状态数据表征的布局确定为所述下一时间步的最优布局;在所述下一时间步的布局状态数据表征的布局的运行性能劣于所述当前时间步的最优布局的运行性能的情况下,将所述当前时间步的最优布局作为所述下一时间步的最优布局。

在一些实施例中,在所述迭代终止条件不满足且所述当前时间步不存在未布局到物理核上的情况下,所述方法还包括:

将所述下一时间步的布局状态数据重置为初始布局状态数据。

在一些实施例中,在所述迭代终止条件满足的情况下,得到所述目标布局的步骤包括:

将所述下一时间步的最优布局作为所述目标布局。

在一些实施例中,在所述终止条件满足的情况下,得到所述目标布局的步骤包括;

确定所述当前时间步之前,不存在未布局到物理核上的逻辑核的至少一个时间步的布局状态数据所表征的布局中,运行性能最优的布局;

将所述运行性能最优的布局确定为所述目标布局。

在一些实施例中,所述第一神经网络为卷积神经网络、循环神经网络、图神经网络中的任意一者。

在一些实施例中,所述方法还包括:

根据预定算法,确定具有确定拓扑的多个逻辑核的标识信息。

在一些实施例中,根据预定算法,确定具有确定拓扑的多个逻辑核的标识信息的步骤包括:根据多个逻辑核中的信号流向确定多个逻辑核的所述标识信息。

在一些实施例中,所述方法还包括:

每一个布局动作中布局到物理核的逻辑核的数量是固定值。

第二方面,本公开实施例提供一种布局模型的训练方法,所述布局模型用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述训练方法包括:

确定多个样本,每个样本包括具有确定拓扑的多个逻辑核布局;

对所述样本的执行上述任意一项的确定逻辑核布局的方法;

以得到的所述第一神经网络为布局模型。

第三方面,本公开实施例提供一种确定逻辑核布局的方法,用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述方法包括:

将具有确定拓扑的多个逻辑核的标识信息输入布局模型,以得到具有确定拓扑的多个逻辑核的目标布局;所述布局模型为根据本公开实施例第二方面所述的布局模型的训练方法得到的。第四方面,本公开实施例提供一种电子设备,其包括:

一个或多个处理器;

存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现以下方法中的至少一者:

根据本公开实施例第一方面所述的确定逻辑核布局的方法;

根据本公开实施例第二方面所述的布局模型的训练方法;

根据本公开实施例第三方面所述的确定逻辑核布局的方法。

第五方面,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:

根据本公开实施例第一方面所述的确定逻辑核布局的方法;

根据本公开实施例第二方面所述的布局模型的训练方法;

根据本公开实施例第三方面所述的确定逻辑核布局的方法。

在本公开实施例提供的确定逻辑核布局的方法中,基于强化学习,通过第一神经网络对能够表征物理核的拓扑结构、和逻辑核与物理核的映射关系的布局状态数据进行处理,生成布局动作,并通过根据运行性能确定的收益更新第一神经网络的参数,最终能够得到运行性能满足预设要求的逻辑核的布局。基于强化学习对逻辑核布局进行优化,有效缩减了搜索空间,有利于搜索到更优布局,能够解决数据传输延迟及数据传输延迟的非均匀问题,从而确保布局后神经网络模型的运行性能。

附图说明

附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其它特征和优点对本领域技术人员将变得更加显而易见,在附图中:

图1为众核架构的示意图;

图2为本公开实施例提供的一种确定逻辑核布局的方法中部分步骤的流程图;

图3为本公开实施例中基于强化学习对逻辑核布局进行优化的流程示意图;

图4为本公开实施例中基于强化学习对逻辑核布局进行优化的模型示意图;

图5为本公开实施例提供的另一种确定逻辑核布局的方法中部分步骤的流程图;

图6为本公开实施例提供的又一种确定逻辑核布局的方法中部分步骤的流程图;

图7为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图8为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图9为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图10为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图11为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图12为本公开实施例提供的再一种确定逻辑核布局的方法中部分步骤的流程图;

图13为本公开实施例提供的一种布局模型的训练方法的流程图;

图14为本公开实施例提供的一种确定逻辑核布局的方法的流程图;

图15为本公开实施例提供的一种电子设备的组成框图;

图16为本公开实施例提供的一种计算机可读介质的组成框图。

具体实施方式

为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的确定逻辑核布局的方法、布局模型的训练方法、确定逻辑核布局的方法、电子设备、计算机可读介质进行详细描述。

在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。

在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。

如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。

本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。

除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。

经本公开的发明人研究发现,在将神经网络模型部署到众核架构时,即使将神经网络模型拆分后的逻辑核计算图一致,物理核的物理布局不同也会导致不同的核间延迟,而随着多个芯片或多个芯片阵列板构成的系统的规模的扩大,将会导致更大的数据传输延迟,还会因为片上/片间不均匀的通信能力产生数据传输延迟的非均匀问题。

在一些相关技术中,大多采用顺序布局(按照逻辑核的序号将逻辑核顺序布局到物理核上)或者启发式搜索(按照一定规则进行随机搜索)来优化逻辑核到物理核的布局,但是,顺序布局的方案并没有针对上述数据传输延迟及数据传输延迟的非均匀问题进行优化,布局后神经网络模型的运行性能较差;而当众核架构的系统规模较大时,启发式搜索的方案由于搜索空间巨大而无法得到最优布局。因此,在一些相关技术中,将神经网络模型部署到众核架构的方案均无法解决上述数据传输延迟及数据传输延迟的非均匀问题,也就无法确保布局后神经网络模型的运行性能。

有鉴于此,第一方面,参照图2,本公开实施例提供一种确定逻辑核布局的方法,用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述方法包括:

在步骤S100中,基于强化学习方式更新第一神经网络的参数,以根据第一神经网络得到目标布局;所述第一神经网络配置为根据当前时间步的布局状态数据生成布局动作。

图3为本公开实施例中,基于强化学习(RL,Reinforcement Learning)对逻辑核布局进行优化的流程示意图。如图3所示,在强化学习中,每一个时间步都由智慧体(Agent)产生布局动作,然后由环境(Environment)评估当前时间步的收益,更新智慧体的参数,进而更新智慧体的布局策略,以获得更大的收益的预期,通过多次迭代,最终能够得到一个满足要求的逻辑核布局。

在本公开实施例中,构造第一神经网络作为所述智慧体,第一神经网络能够处理布局状态数据并生成布局动作,其中,布局状态数据表征具有确定拓扑的多个物理核的拓扑结构、和已布局的逻辑核与物理核的映射关系;布局动作表征至少一个待布局的逻辑核与物理核的映射关系。

在图3所示的强化学习过程,当前时间步的收益是根据当前时间步的布局状态下需要部署到众核架构的神经网络模型的运行性能确定的。本公开实施例对运行性能的具体类型不做特殊限定。例如,运行性能可以是延迟、吞吐量、功耗中的至少一者。图3中所示的延迟(Latency)仅为示例性说明。根据运行性能确定收益,能够使通过执行步骤S100得到的目标布局的相应运行性能满足预设要求。

在本公开实施例中,通过步骤S100获取具有确定拓扑的多个逻辑核的目标布局时,还完成了调整第一神经网络的参数的过程,从而可使第一神经网络在进行后续运行时在期望上能获得更好的效果,即得到具有更好实际运行性能的目标布局。

作为本公开实施例的一种应用方式,可以是对需要进行实际布局的具有确定拓扑的多个逻辑核,通过步骤S100的方式,得到所需的最佳目标布局,并利用该最佳目标布局进行该多个逻辑核的实际布局。

作为本公开实施例的另一种应用方式,可以是对具有确定拓扑的多个逻辑核,通过步骤S100的方式进行处理,以改善第一神经网络中的参数,其相当于对第一神经网络进行“训练”。当然,在该过程中,实际也可得到对应的目标布局,但该目标布局可不进行实际的应用。

作为本公开实施例的另一种应用方式,可以是通过步骤S100的方式处理多种具有不同拓扑的多个逻辑核,以改善第一神经网络中的参数,完成第一神经网络的训练。从而在后续过程中,可直接用训练完成的第一神经网络对具有任意确定拓扑的多个逻辑核进行布局,而此过程中不用再改变第一神经网络的参数。

在本公开实施例提供的确定逻辑核布局的方法中,基于强化学习,通过第一神经网络对能够表征物理核的拓扑结构、和逻辑核与物理核的映射关系的布局状态数据进行处理,生成布局动作,并通过根据运行性能确定的收益更新第一神经网络的参数,最终能够得到运行性能满足预设要求的逻辑核的布局。基于强化学习对逻辑核布局进行优化,有效缩减了搜索空间,有利于搜索到更优布局,能够解决数据传输延迟及数据传输延迟的非均匀问题,从而确保布局后神经网络模型的运行性能。

本公开实施例定义了一种数据化表征结构,与物理核的连接拓扑相匹配,能够对物理核的拓扑结构、和已布局的逻辑核与物理核的映射关系数据化为第一神经网络能够识别和处理的数据,从而能够把强化学习应用到对逻辑核布局的优化。

相应地,参照图5,在一些实施例中,在步骤S100之前,所述方法还包括:

在步骤S200中,确定数据化表征结构,所述数据化表征结构表征多个物理核的拓扑和逻辑核与物理核的映射关系,所述当前时间步的布局状态数据符合所述数据化表征结构。

需要说明的是,在步骤S100中当前时间步的布局状态数据符合所述数据化表征结构;生成的布局动作也可以用符合所述数据化表征结构的数据进行表示。

本公开实施例对数据化表征结构的具体形式不做特殊限定。例如,可以用坐标表示多个物理核的拓扑结构,用逻辑核的标识与物理核的坐标的对应关系表整逻辑核与物理核的映射关系;也可以用二维矩阵表示多个物理核的拓扑结构、和逻辑核与物理核的映射关系;还可以用三维图表示多个物理核的拓扑结构、和逻辑核与物理核的映射关系。

图4给出了本公开实施例中数据化表征结构的一种可选实施方式。如图4所示,用二维矩阵表示多个物理核的拓扑结构、和逻辑核与物理核的映射关系。其中,右侧的矩阵中的元素与左侧众核架构中的物理核一一对应,即,将多个物理核的拓扑结构数据化;右侧矩阵中值为0的元素对应空闲物理核(即未布局逻辑核的物理核),不为0的元素对应布局了逻辑核的物理核,对应的值表示部署在物理核上的逻辑核的标识,即,将逻辑核与物理核的映射关系数据化。

需要说明的是,在本公开实施例中,步骤S100的输出为能够表征目标布局、且符合本公开实施例中数据化表征结构的布局数据。根据输出的布局数据能够得到目标布局的拓扑结构、并能够得到目标布局中逻辑核与物理核的映射关系,根据目标布局中逻辑核与物理核的映射关系能够确定在实际的众核架构中如何将逻辑核布局到实际的物理核。

作为一种可选的实施方式,根据多个物理核的拓扑结构确定所述数据化表征结构。

需要说明的是,在本公开实施例中,可以用相同的神经网络处理处理符合不同数据化表征结构的数据,也可以根据不同数据化表征结构构造相应的神经网络。本公开实施例对此不做特殊限定。

在一些实施例中,参照图6,所述基于强化学习方式更新第一神经网络的参数的步骤包括:

在步骤S110中,根据当前时间步的布局状态数据,通过所述第一神经网络生成所述当前时间步的布局动作;

在步骤S120中,根据所述当前时间步的收益参数更新所述第一神经网络参数,以增大所述当前时间步的收益参数的预期;所述收益参数至少包括所述当前时间步的布局状态的实际收益;

在步骤S130中,判断学习终止条件是否满足,若是则学习结束,若否则返回所述通过所述第一神经网络生成所述当前时间步的布局动作的步骤。

在本公开实施例中,步骤S110至步骤S130对应强化学习迭代中的一个时间步,每次迭代对应从没有逻辑核布局到物理核上的初始布局状态到所有逻辑核都部署到物理核上的布局状态的多个时间步。

本公开实施例对于如何确定当前时间步的收益参数不做特殊限定。例如,可以构造奖赏函数,根据当前时间步的布局状态数据和当前时间步的布局动作计算当前时间步的收益。

需要说明的是,当第一神经网络的参数变化时,第一神经网络生成布局动作的策略也会发生变化。即,不同的第一神经网络的参数对应不同的策略。步骤S120中所述的当前时间步的收益参数的预期,是指保持选定第一神经网络的参数(即选定的策略不变)的情况下,根据选定的策略从当前时间步开始完成所有逻辑核到物理核的布局所能获得的收益。

在本公开实施例中,第一神经网络可以为卷积神经网络,也可以为循环神经网络,还可以为图神经网络。本公开实施例对此不做特殊限定。

在一些实施例中,参照图7,所述根据所述当前时间步的收益参数更新所述第一神经网络参数,以增大所述当前时间步的收益参数的预期包括:

在步骤S121中,根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,通过第二神经网络确定所述当前时间步的整体收益;

在步骤S122中,根据所述当前时间步的整体收益更新所述第二神经网络的参数,以使所述当前时间步的整体收益逼近所述当前时间步的累计收益的预期,所述当前时间步的累计收益由所述当前时间步的实际收益和所有后续时间步对应的布局状态的实际收益确定;

在步骤S123中,根据所述当前时间步的整体收益更新所述第一神经网络参数,以增大所述当前时间步的整体收益的预期。

在本公开实施例中,当前时间步的整体收益表征第一神经网络保持参数不变的情况下,选择当前时间步的布局动作所能获得的预期收益。

当前时间步的累计收益表征第一神经网络保持参数不变的情况下,当前时间步后的后续时间步的实际收益在当前时间步的折现值,表示当前时间步的布局动作的价值与后续时间步的布局动作的价值相关。

在本公开实施例中,第二神经网络也经过不断学习更新第二神经网络的参数,从而使第二神经网络确定的当前时间步的整体收益逼近当前时间步的累计收益的预期。当前时间步的整体收益逼近当前时间步的累计收益。当前时间步的整体收益逼近当前时间步的累计收益,表示第二神经网络生成的当前时间步的整体收益越准确。

需要说明的是,在本公开实施例中,由于当前时间步的累计收益能够反映后续时间步的布局动作的价值对当前时间步的布局动作的价值的影响,当第二神经网络通过不断学习使当前时间步的整体收益逼近当前时间步的累计收益时,第二神经网络确定的当前时间步的整体收益也就能够反映后续时间步的布局动作的价值对当前时间步的布局动作的价值的影响。当第一神经网络通过不断学习使当前时间步的整体收益增大时,即表示第一神经网络在生成当前时间步的布局动作时考虑了未来的收益。从而更加有利于搜索到最佳布局。

图4为本公开实施例中基于强化学习对逻辑核布局进行优化的模型示意图。如图4所示,第一神经网络和第二神经网络的输入均为符合本公开实施例定义的数据化表征结构的当前布局状态数据;第一神经网络输出当前时间步的布局动作(action),并将当前时间步的布局动作输入第二神经网络;第二神经网络输出当前时间步的整体收益Q(s,a)。

在一些实施例中,所述当前时间步的累计收益等于当前时间步的实际收益和后续每一时间步的实际收益通过后续每一时间步的折现系数加权后的和,所述折现系数表征后续时间步的布局动作对所述当前时间步的整体收益的影响的大小。

在一些实施例中,后续每一个时间步的折现系数逐个递减。

作为一种可选的实施方式,用公式(1)计算累计收益:

其中,R

作为一种可选的实施方式,γ的取值范围为(0,1]。

在本公开实施例中,根据当前时间步的布局状态数据和当前时间步的布局动作能够确定执行当前时间步的布局动作之后的布局状态数据,得到逻辑核的布局。在物理核的拓扑确定的情况下,确定了逻辑核的布局即可对逻辑核布局的运行性能进行评估。作为一种可选的实施方式,当前时间步的实际收益表征逻辑核布局的运行性能。

相应地,在一些实施例中,参照图8,所述方法还包括:

在步骤S300中,根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,确定所述当前时间步的实际收益。

在存在未布局到物理核上的逻辑核的情况下,由于无法得到完整的逻辑核布局,因此无法对逻辑核布局的运行性能进行评估。

相应地,在一些实施例中,参照图9,步骤S300包括:

在步骤S301中,在所述当前时间步存在未布局到物理核上的逻辑核的情况下,将预定收益值确定为所述当前时间步的布局状态的实际收益;

在步骤S302中,在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,根据所述当前时间步的布局状态的运行性能确定所述当前时间步的布局状态的实际收益。

作为一种可选的实施方式,步骤S301中的预定收益值为0。

在本公开实施例中,如何对逻辑核布局的运行性能进行评估不做特殊限定。例如,可以通过硬件模型,根据逻辑核布局进行模拟,从而评估运行性能。

本公开实施例对于在步骤S130中如何判断学习终止条件是否满足不做特殊限定。作为一种可选的实施方式,参照图10,步骤S130包括:

在步骤S131中,判断所述当前时间步是否存在未布局到物理核上的逻辑核;

在步骤S132中,在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,判断迭代终止条件是否满足;

在步骤S133中,在所述迭代终止条件满足的情况下,判定所述学习终止条件满足。

本公开实施例对于如何执行步骤S132判断迭代条件是否满足不做特殊限定。例如,迭代终止条件满足包括当前时间步的迭代次数达到预定迭代次数、当前时间步的整体收益达到预定收益值、第一神经网络的参数和第二神经网络的参数收敛中的至少一者。

在本公开实施例中,每执行完一次迭代,即全部逻辑核均布局到物理核上,则判断是否需要对存储的最优布局进行更新。

相应地,在一些实施例中,参照图11,所述方法还包括:

在步骤S401中,根据所述当前时间步的布局状态数据和所述当前时间步的布局动作,生成下一时间步的布局状态数据;

在步骤S402中,在所述当前时间步不存在未布局到物理核上的逻辑核的情况下,判断所述下一时间步的布局状态数据表征的布局的运行性能是否优于所述当前时间步的最优布局的运行性能;

在步骤S403中,在所述下一时间步的布局状态数据表征的布局的运行性能优于所述当前时间步的最优布局的运行性能的情况下,将所述下一时间步的布局状态数据表征的布局确定为所述下一时间步的最优布局;在所述下一时间步的布局状态数据表征的布局的运行性能劣于所述当前时间步的最优布局的运行性能的情况下,将所述当前时间步的最优布局作为所述下一时间步的最优布局。

在本公开实施例中,每执行完一次迭代,即全部逻辑核均布局到物理核上,则从初始布局状态开始,执行下一次迭代。

相应地,在一些实施例中,参照图11,在所述迭代终止条件不满足且所述当前时间步不存在未布局到物理核上的情况下,所述方法还包括:

在步骤404中,将所述下一时间步的布局状态数据重置为初始布局状态数据。

在一些实施例中,在迭代终止条件满足的情况下,将存储的最优布局作为目标布局。

作为一种可选的实施方式,每执行完一次迭代,即全部逻辑核均布局到物理核上,则存储相应的逻辑核布局,根据存储的逻辑核布局确定目标布局。

在一些实施例中,可以将确定所述当前时间步之前,不存在未布局到物理核上的逻辑核的至少一个时间步的布局状态数据所表征的布局中,运行性能最优的布局确定为所述目标布局。

在一些实施例中,参照图12,所述方法还包括:

在步骤S500中,根据预定算法,确定具有确定拓扑的多个逻辑核的标识信息。

本公开实施例对步骤S500中所述的预定算法不做特殊限定。例如,可以根据多个逻辑核中信号的流向确定多个逻辑核的标识信息。

作为一种可选的实施方式,逻辑核的标识信息为逻辑核的序号。

通过步骤S500能够有利于获得更优的逻辑核布局。

在一些实施例中,每一个布局动作中布局到物理核的逻辑核的数量是固定值。

即每一个布局动作中布局到物理核逻辑核的数量可以是固定的,而不是变化的。

第二方面,参照图13,本公开实施例提供一种布局模型的训练方法,所述布局模型用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述训练方法包括:

在步骤S601中,确定多个样本,每个样本包括具有确定拓扑的多个逻辑核布局;

在步骤S602中,对所述样本的执行上述任意一项的确定逻辑核布局的方法;

在步骤S603中,以得到的所述第一神经网络为布局模型。

第三方面,参照图14,本公开实施例提供一种确定逻辑核布局的方法,用于将具有确定拓扑的多个逻辑核布局到具有确定拓扑的多个物理核,所述方法包括:

在步骤S700中,将具有确定拓扑的多个逻辑核的标识信息输入布局模型,以得到具有确定拓扑的多个逻辑核的目标布局;所述布局模型为根据本公开实施例第二方面所述的布局模型的训练方法得到的。

在本公开实施例中,通过步骤S700确定逻辑核布局时,布局模型中第一神经网络的参数保持不变。

第四方面,参照图15,本公开实施例提供一种电子设备,其包括:

一个或多个处理器101;

存储器102,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现以下方法中的至少一者:

根据本公开实施例第一方面所述的确定逻辑核布局的方法;

根据本公开实施例第二方面所述的布局模型的训练方法;

根据本公开实施例第三方面所述的确定逻辑核布局的方法。

一个或多个I/O接口103,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。

其中,处理器101为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器102为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)103连接在处理器101与存储器102间,能实现处理器101与存储器102的信息交互,其包括但不限于数据总线(Bus)等。

在一些实施例中,处理器101、存储器102和I/O接口103通过总线104相互连接,进而与计算设备的其它组件连接。

第五方面,参照图16,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现以下方法中的至少一者:

根据本公开实施例第一方面所述的确定逻辑核布局的方法;

根据本公开实施例第二方面所述的布局模型的训练方法;

根据本公开实施例第三方面所述的确定逻辑核布局的方法。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。

本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。

相关技术
  • 确定逻辑核布局的方法、模型训练方法、电子设备、介质
  • 声纹核身模型训练方法、装置、介质及电子设备
技术分类

06120112245347