神经网络模型的运行方法、可读介质和电子设备技术

技术编号:32917499 阅读:8 留言:0更新日期:2022-04-07 12:08
本申请涉及人工智能领域,公开了一种神经网络模型的运行方法、可读介质和电子设备。该方法应用于处理器包括多个内核的电子设备,并且该方法包括:在运行神经网络模型的过程中,检测到处理器存在N个空闲内核;对于神经网络模型中当前未被运行的M个计算节点,按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给所述N个空闲内核中的L个空闲内核,其中,N、M、L为正整数,并且L≤N。由于运行顺序在前的计算节点的分配优先级较高,从而可以降低处理器内核的空闲率,进而提高电子设备运行神经网络模型的速度。运行神经网络模型的速度。运行神经网络模型的速度。

【技术实现步骤摘要】
神经网络模型的运行方法、可读介质和电子设备


[0001]本申请涉及人工智能领域,特别涉及一种神经网络模型的运行方法、可读介质和电子设备。

技术介绍

[0002]随着神经网络模型的计算节点的数量的增加,为提高神经网络模型的运行速度,可以利用多核计算资源对神经网络模型进行并行计算。例如,电子设备在运行神经网络模型之前,可以先随机确定电子设备的处理器中用于运行神经网络模型中各计算节点的内核,以便于电子设备在运行该神经网络模型时,可以通过分配的内核运行各计算节点,实现神经网络模型的并行计算。但是,处理器的内核数量通常小于神经网络模型的计算节点的数量,在某一计算节点的输入数据为其他计算节点的计算结果,但该计算结果还未计算完成的情况下,由于已经预先确定用于运行各计算节点的内核,会造成用于运行该计算节点的内核由于等待输入数据而处于空闲状态,造成处理器内核资源的浪费,降低了神经网络模型并行计算的速度。

技术实现思路

[0003]有鉴于此,本申请实施例提供了一种神经网络模型的运行方法、可读介质和电子设备。电子设备在运行神经网络模型的过程中,若检测到电子设备的处理器有空闲内核,根据各计算节点的分配优先级从高到低将计算节点分配给空闲内核,从而提高处理器内核的利用率、提高电子设备运行神经网络模型的速度。
[0004]第一方面,本申请实施例提供了一种神经网络模型的运行方法,应用于电子设备,其特征在于,电子设备的处理器包括多个内核;并且该方法包括:
[0005]在运行神经网络模型的过程中,检测到处理器存在N个空闲内核;对于该神经网络模型中当前未被运行的M个计算节点,按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给所述N个空闲内核中的L个空闲内核,其中,N、M、L为正整数,并且L≤N。
[0006]在本申请实施例中,电子设备是先将分配优先级较高的计算节点,分配给空闲的内核,可以减小空闲内核分配计算节点等待该计算节点的输入数据的时间,如此可以降低处理器内核的空闲率,从而提高电子设备运行神经网络模型的速度。
[0007]在上述第一方面的一种可能实现中,根据神经网络模型各计算节点的运行顺序,确定各计算节点的分配优先级。
[0008]也即是在本申请实施例中,神经网络模型的计算节点的运行顺序越靠前,该计算节点的分配优先级越高。
[0009]在上述第一方面的一种可能实现中,根据神经网络模型各计算节点的运行顺序,确定各计算节点的分配优先级,包括:在待分配优先级的待分配计算节点未连接输入计算节点的情况下,确定待分配计算节点的优先级为第1级;在待分配计算节点连接至少一个输入计算节点、并且所连接的至少一个输入计算节点所具有的最高分配优先级为第j级的情
况下,确定待分配计算节点的优先级为第j+1级,其中,第j级所表示的优先级高于第j+1级;
[0010]其中一计算节点的输入计算节点是指输出结果为该计算节点的输入数据的计算节点。
[0011]在上述第一方面的一种可能实现中,在M>N的情况下,L=N;未被运行的计算节点中的所具有的最高分配优先级为第k级,第k级分配优先级包括P个未被运行的计算节点;并且
[0012]按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给N个空闲内核中的L个空闲内核,包括:在P<L的情况下,将P个未被运行的计算节点分配给L个空闲内核中的P个空闲内核,并且按照分配优先级从高到低的顺序从分配优先级低于第k级的计算节点中选取L

P个计算节点分配给未分配计算节点的L

P个空闲内核;
[0013]在P≥L的情况下,从P个未被运行的计算节点中选取的L个计算节点分配给L个空闲内核。
[0014]即是电子设备在未计算的计算节点的数量大于空闲内核数量的情况下,先将当前未分配的未计算计算节点中最高分配优级的的计算节点分配给空闲的内核,再将次高分配优级的计算节点分配给空闲的内核,直到所有的空闲内核都分配有计算节点。
[0015]在上述第一方面的一种可能实现中,在M≤N的情况下,L=M;并且按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给N个空闲内核中的L个空闲内核,包括:将未被运行的M个计算节点分配给N个空闲内核中的M个空闲内核。
[0016]在上述第一方面的一种可能实现中,在处理器的内核未分配神经网络模型的计算节点或处理器的内核的空闲率大于预设值的情况下,确定该处理器的内核为空闲内核。
[0017]即是在本申请实施例中,处理器的内核未分配有计算节点或已分配有计算节点但内核的空闲率大于预设值的情况下,可以确定该内核为空闲内核。
[0018]在上述第一方面的一种可能实现中,L个未被运行的计算节点包括第一计算节点,并且该第一计算节点被分配给L个空闲内核中的第一内核;该方法还包括:在第一计算节点不存在输入计算节点或第一计算节点的输入计算节点已完成计算的情况下,在第一内核中启动第一计算节点对应的计算线程;
[0019]在第一计算节点的输入计算节点未完成计算的情况下,将第一计算节点对应的计算线程设置为休眠。
[0020]即是在将第一计算节点分配给第一内核后,若第一计算节点的输入计算节点已完成计算或第一计算节点没有输入计算节点,则直接在第一内核上启动第一计算节点对应的计算线程;若第一计算节点的输入计算节点未完成计算,则将第一计算节点对应的计算线程设置为休眠,以节省第一内核的计算资源。
[0021]在上述第一方面的一种可能实现中,还包括:在将第一计算节点对应的计算线程设置为休眠的情况下,将第一内核标记为空闲内核。
[0022]在本申请实施例中,将第一计算节点对应的计算线程设置为休眠的情况下,将第一内核标记为空闲内核,以便于其他计算节点可以通过第一内核来运行其他计算节点的计算线程,从而避免第一内核由于等待第一计算节点为输入数据处于空闲状态,进一步提高内核的使用率,从而提供神经网络模型的运行速度。
[0023]在上述第一方面的一种可能实现中,还包括:在检测到第一计算节点的输入计算
节点已经完成计算,并且第一内核处于非空闲状态的情况下,取消第一计算节点与第一内核的分配关系,将第一计算节点作为待分配计算节点。
[0024]也即是在将第一内核分配给其他计算节点,但该计算节点还未完成计算的情况下,若第一计算节点的输入计算节点已经完成计算,将第一计算节点作为下一个分配的计算节点,确保第一计算节点可以及时运行,避免以第一计算节点为输入计算节点的计算节点等待第一计算节点的计算结果,从而提高神经网络模型的运行顺序。
[0025]第二方面,本申请实施例提供了一种可读介质,该可读介质中包含有指令,当该指令被电子设备的处理器执行时使电子设备实现上述第一方面及上述第一方面的各种可能实现提供的任意一种神经网络模型运行方法。
[0026]第三方面,本申请实施例提供了一种电子设备,包括:
[0027]存储器,用于存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种神经网络模型的运行方法,应用于电子设备,其特征在于,所述电子设备的处理器包括多个内核;并且所述方法包括:在运行所述神经网络模型的过程中,检测到所述处理器存在N个空闲内核;对于所述神经网络模型中当前未被运行的M个计算节点,按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给所述N个空闲内核中的L个空闲内核,其中,N、M、L为正整数,并且L≤N。2.根据权利要求1所述的方法,其特征在于,还包括:根据所述神经网络模型各计算节点的运行顺序,确定各所述计算节点的分配优先级。3.根据权利要求2所述的方法,其特征在于,所述根据所述神经网络模型各计算节点的运行顺序,确定各所述计算节点的分配优先级,包括:在待分配优先级的待分配计算节点未连接输入计算节点的情况下,确定所述待分配计算节点的优先级为第1级;在待分配计算节点连接至少一个输入计算节点、并且所连接的至少一个输入计算节点所具有的最高分配优先级为第j级的情况下,确定待分配计算节点的优先级为第j+1级,其中,第j级所表示的优先级高于所述第j+1级;其中一计算节点的输入计算节点是指输出结果为该计算节点的输入数据的计算节点。4.根据权利要求3所述的方法,其特征在于,在M>N的情况下,L=N;所述未被运行的计算节点中的所具有的最高分配优先级为第k级,所述第k级分配优级包括P个未被运行的计算节点;并且所述按照分配优先级从高到低的顺序,选择出L个未被运行的计算节点分配给所述N个空闲内核中的L个空闲内核,包括:在P<L的情况下,将所述P个未被运行的计算节点分配给所述L个空闲内核中的P个空闲内核,并且按照分配优先级从高到低的顺序从分配优先级低于第k级的计算节点中选取L

P个计算节点分配给未分配计算节点的L

P个空闲内核;在P≥L的情况下,从所述P个未被运行的计算节点中选取的L个计算节点...

【专利技术属性】
技术研发人员:余宗桥许礼武
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1