CN114387150A - 用于人工智能学习的处理方法及装置、设备及存储介质 - Google Patents

用于人工智能学习的处理方法及装置、设备及存储介质 Download PDF

Info

Publication number
CN114387150A
CN114387150A CN202011126557.1A CN202011126557A CN114387150A CN 114387150 A CN114387150 A CN 114387150A CN 202011126557 A CN202011126557 A CN 202011126557A CN 114387150 A CN114387150 A CN 114387150A
Authority
CN
China
Prior art keywords
node
nodes
subgraph
task
tasks
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
Application number
CN202011126557.1A
Other languages
English (en)
Other versions
CN114387150B (zh
Inventor
颜健武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Futaihua Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Original Assignee
Futaihua Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Futaihua Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Futaihua Industry Shenzhen Co Ltd
Priority to CN202011126557.1A priority Critical patent/CN114387150B/zh
Priority to US17/506,630 priority patent/US20220121943A1/en
Publication of CN114387150A publication Critical patent/CN114387150A/zh
Application granted granted Critical
Publication of CN114387150B publication Critical patent/CN114387150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种用于人工智能学习的处理方法,包括:将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行;确定所述第一节点中由所述图形处理器执行的任务对应的第二节点构成的第二节点子图;确定所述第二节点子图中的有向无环子图;合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。本案还提供一种装置、设备及存储介质,可合并顺序执行,不会回头,不会循环执行的由所述图形处理器执行的任务,来减少所述中央处理器需要处理的中断。

Description

用于人工智能学习的处理方法及装置、设备及存储介质
技术领域
本发明涉及数据处理技术领域,具体涉及一种用于人工智能学习的处理方法及装置、设备及存储介质。
背景技术
计算机系统一般包括多个处理器,分别为中央处理器及图形处理器。所述图形处理器用于减少所述中央处理器处理程序的负担。目前,所述计算机系统在处理训练神经网络模型时,往往为所述中央处理器执行一些节点所代表的任务,而其他节点所代表的任务由所述图形处理器执行。所述图形处理器在执行完每个节点所代表的任务后都发送一次中断信号至所述中央处理器,使得所述中央处理器处理所述中断。而所述中央处理器通过寄存器及程序计数器存储中断前的数据,并在处理完所述中断后,会通过所述寄存器及所述程序计数器内的数据继续执行中断前的任务。但是,如此所述中央处理器将会消耗大量的功耗在处理所述中断上。
发明内容
鉴于此,有必要提供一种用于人工智能学习的处理方法及装置、设备及存储介质,可将至少两个由所述图形处理器执行的任务进行合并,来减少所述中央处理器需要处理的中断。
本申请的第一方面提供一种用于人工智能学习的处理方法,包括:
将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行;
确定所述第一节点中由所述图形处理器执行的任务对应的第二节点构成的第二节点子图;
确定所述第二节点子图中的有向无环子图;
合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
较佳地,所述将模型构建为包括多个第一节点的有向图包括:
根据执行任务的顺序将模型构建为包括多个第一节点的有向图。
较佳地,所述确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图包括:
确定所述第一节点中由所述图形处理器执行的任务对应的第二节点;
将所述第二节点中在执行的顺序上存在相同相邻节点的第三节点及所述相邻节点集合在一起组成所述第二节点子图,所述执行的顺序包括并列执行顺序及顺序执行顺序。
较佳地,所述确定所述第二节点子图中的有向无环子图包括:
确定所述第二节点子图中的顺序节点;
根据所述顺序节点确定有向无环子图。
较佳地,所述合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
较佳地,所述根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
根据所述图形处理器的处理能力将包括至少两个第二节点的有向无环子图切分为子有向无环子图;
合并包括至少两个第二节点的子有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
较佳地,所述方法还包括:
将合并的所述任务传送至所述图形处理器执行;
在所述图形处理器执行完成所述合并的所述任务后,发送一次中断信号至所述中央处理器。
本申请的第二方面提供一种用于人工智能学习的处理装置,所述装置包括:
构建模块,用于将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行;
第二节点子图确定模块,用于确定所述第一节点中由所述图形处理器执行的任务对应的第二节点构成的第二节点子图;
有向无环子图确定模块,用于确定所述第二节点子图中的有向无环子图;
合并模块,用于合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
本申请的第三方面提供一种设备,所述设备包括一个或多个处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如上任意一项所述的用于人工智能学习的处理方法。
本申请的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行以实现如上任意一项所述的用于人工智能学习的处理方法。
本案通过将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,所述第一节点代表的任务由中央处理器及图形处理器执行,确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图,确定所述第二节点子图中的有向无环子图,合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务,可合并顺序执行,不会回头,不会循环执行的由所述图形处理器执行的任务,来减少所述中央处理器需要处理的中断。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的用于人工智能学习的处理装置的方框图。
图2是本发明实施例二提供的用于人工智能学习的处理方法的流程图。
图3是包括多个第一节点的有向图的示意图。
图4是图3的有向图包括第二节点子图的示意图。
图5是图3的有向图包括有向无环子图的示意图。
图6是图3的有向图中节点代表的任务合并的示意图。
图7是图3的有向图中的第四节点的示意图。
图8是图3的有向图包括第二节点子图的示意图。
图9是本发明实施例三提供的设备的方框图。
如下具体实施方式将结合上述附图进一步说明本发明。
主要元件符号说明
用于人工智能学习的处理装置 10
构建模块 101
第二节点子图确定模块 102
有向无环子图确定模块 103
合并模块 104
设备 9
存储器 91
处理器 92
计算机程序 93
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
图1为本发明实施例一提供的用于人工智能学习的处理装置。所述用于人工智能学习的处理装置10包括构建模块101、第二节点子图确定模块102、有向无环子图确定模块103、及合并模块104。所述构建模块101用于将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行。所述第二节点子图确定模块102用于确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图。所述有向无环子图确定模块103用于确定所述第二节点子图中的有向无环子图。所述合并模块104用于合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。所述模块101~104的具体功能将参考图2中用于人工智能学习的处理方法的流程图进行详细描述。
请参考图2,图2为本发明实施例二提供的用于人工智能学习的处理方法的流程图。所述用于人工智能学习的处理方法应用于设备中。所述设备可以为任何一种包括中央处理器及图形处理器的设备,例如计算机系统及设备等。所述用于人工智能学习的处理方法包括以下步骤:
S201:将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行。
所述模型为基于TensorFlow、MXNet、Caffe及Pytorch等框架的训练的神经网络模型。所述第一节点可为节点或者为指令等。所述将模型构建为包括多个第一节点的有向图包括:根据执行任务的顺序将模型构建为包括多个第一节点的有向图。所述执行任务的顺序包括并列执行及顺序执行等。例如,在图3中,C节点代表的任务为c任务,D节点代表的任务为d任务,E节点代表的任务为e任务,则执行c任务与执行d任务的顺序为并列执行,执行d任务与执行e任务的顺序为顺序执行。其中,在图3中,A节点代表的任务、H节点代表的任务及I节点代表的任务由中央处理器执行,B节点代表的任务、C节点代表的任务、D节点代表的任务、E节点代表的任务、F节点代表的任务及G节点代表的任务由图形处理器执行。
S202:确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图。
在本实施例中,所述确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图包括:
a1:确定所述第一节点中由所述图形处理器执行的任务对应的第二节点。
例如,在图3中,所述第一节点中由所述图形处理器执行的任务对应的第二节点包括B节点、C节点、D节点、E节点、F节点及G节点。
a2:将所述第二节点中在执行的顺序上存在相同相邻节点的第三节点及所述相邻节点集合在一起组成所述第二节点子图,所述执行的顺序包括并列执行顺序及顺序执行顺序。
例如,在图3中,所述C节点与所述D节点在并列执行顺序上存在相同相邻节点为B节点,所述B节点与所述E节点在顺序执行顺序上存在相同相邻节点为D节点,所述D节点与所述F节点在顺序执行顺序上存在相同相邻节点为E节点,及所述E节点与所述G节点在顺序执行顺序上存在相同相邻节点为F节点,则将所述第二节点中在执行的顺序上存在相同相邻节点的第三节点及所述相邻节点集合在一起组成如图4中虚线所包围的第二节点子图。
S203:确定所述第二节点子图中的有向无环子图。
在本实施例中,所述确定所述第二节点子图中的有向无环子图包括:
b1:确定所述第二节点子图中的顺序节点。
例如,在图4中,所述第二节点子图中的顺序节点包括:B节点-C节点及B节点-D节点-E节点-F节点-G节点。
b2:根据所述顺序节点确定有向无环子图。
在本实施例中,所述根据所述顺序节点确定有向无环子图包括:根据所述顺序节点确定最大的有向无环子图。例如,图4中的两个顺序节点皆包括B节点,所述B节点只能属于一个有向无环子图,则根据图4中的顺序节点B节点-C节点及B节点-D节点-E节点-F节点-G节点确定最大的有向无环子图为C节点所构成的有向无环子图、以及B节点、D节点、E节点、F节点、及G节点所构成的有向无环子图,如图5中点划线所包围的图。
在其他实施例中,所述根据所述顺序节点确定有向无环子图包括:根据所述顺序节点随机确定有向无环子图。例如,图4中的两个顺序节点皆包括B节点,所述B节点只能属于一个有向无环子图,则根据图4中的顺序节点B节点-C节点及B节点-D节点-E节点-F节点-G节点确定有向无环子图包括B节点及C节点所构成的有向无环子图,以及D节点、E节点、F节点、及G节点所构成的有向无环子图。
S204:合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
在本实施例中,所述合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
在本实施例中,所述根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
c1:根据所述图形处理器的处理能力将包括至少两个第二节点的有向无环子图切分为子有向无环子图。
例如,所述图形处理器的处理能力为处理三个任务,则根据所述图形处理器的处理能力将包括至少两个第二节点的有向无环子图切分为子有向无环子图为,例如将图5中的B节点、D节点、E节点、F节点、及G节点所构成的有向无环子图切分为B节点、D节点、及E节点所构成的子有向无环子图,以及F节点及G节点所构成的子有向无环子图。
c2:合并包括至少两个第二节点的子有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
例如,将图5中的B节点、D节点、及E节点所构成的子有向无环子图中的所述至少两个第二节点代表的任务合并为一个任务,将图5中的F节点及G节点所构成的子有向无环子图中的所述至少两个第二节点代表的任务合并为一个任务,如图6所示,所述双点划线所围住的图为原任务被合并后对应的节点。从而所述图形处理器原本需要处理的六个任务可被合并为三个任务,会使得所述中央处理器原本需要处理的六个中断减少为三个中断。
在本实施例中,为了减少所述中央处理器需要处理的中断,所述方法还包括:
d1:将合并的所述任务传送至所述图形处理器执行。
d2:在所述图形处理器执行完成所述合并的所述任务后,发送一次中断信号至所述中央处理器。
在另一实施例中,所述确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图包括:
e1:确定所述第一节点中由所述图形处理器执行的任务对应的第二节点。
例如,在图3中,所述第一节点中由所述图形处理器执行的任务对应的第二节点包括B节点、D节点、F节点及G节点。
e2:确定所述第二节点中排除了在执行的顺序上另一节点不为第二节点后的第四节点,所述执行的顺序包括并列执行顺序及顺序执行顺序。
例如,在图3中,D节点在并列执行顺序上存在另一节点C不为第二节点,则第二节点中排除了在执行的顺序上另一节点不为第二节点后的第四节点包括图7中虚线所表示的B节点、F节点及G节点。
e3:将所述第四节点中存在逻辑关系的节点结合在一起组成所述第二节点子图,所述存在逻辑关系的节点包括顺序节点及并列节点。
例如,在图7中,F节点与G节点为顺序节点,则将F节点和G节点结合在一起组成图8中点划线所包围的所述第二节点子图。其中,在本例子中,所述有向无环子图为图8中的第二节点子图。
实施例二将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,所述第一节点代表的任务由中央处理器及图形处理器执行,确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图,确定所述第二节点子图中的有向无环子图,合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。从而,本案可合并顺序执行,不会回头,不会循环执行的由所述图形处理器执行的任务,来减少所述中央处理器需要处理的中断。
图9是本发明实施例三提供的设备的方框图。所述设备9包括:存储器91、至少一个处理器92、及存储在所述存储器91中并可在所述至少一个处理器92上运行的计算机程序93。所述至少一个处理器92执行所述计算机程序93时实现上述方法实施例中的步骤。或者,所述至少一个处理器92执行所述计算机程序93时实现上述装置实施例中的各模块的功能。
示例性的,所述计算机程序93可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器91中,并由所述至少一个处理器92执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序93在所述设备9中的执行过程。例如,所述计算机程序93可以被分割成图1所示的模块,各模块具体功能参见实施例一。
所述设备9可以为任何一种电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)等。本领域技术人员可以理解,所述示意图9仅是设备9的示例,并不构成对设备9的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述设备9还可以包括总线等。
所述至少一个处理器92可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。该处理器92可以是微处理器或者该处理器92也可以是任何常规的处理器等,所述处理器92是所述设备9的控制中心,利用各种接口和线路连接整个设备9的各个部分。
所述存储器91可用于存储所述计算机程序93和/或模块/单元,所述处理器92通过运行或执行存储在所述存储器91内的计算机可读指令和/或模块/单元,以及调用存储在存储器91内的数据,实现所述设备9的各种功能。所述存储器91可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据设备9的使用所创建的数据(比如音频数据等)等。此外,存储器91可以包括非易失性计算机可读存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
所述设备9集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)等。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神范围。

Claims (10)

1.一种用于人工智能学习的处理方法,包括:
将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行;
确定所述第一节点中由所述图形处理器执行的任务对应的第二节点构成的第二节点子图;
确定所述第二节点子图中的有向无环子图;
合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
2.如权利要求1所述的用于人工智能学习的处理方法,其特征在于,所述将模型构建为包括多个第一节点的有向图包括:
根据执行任务的顺序将模型构建为包括多个第一节点的有向图。
3.如权利要求1所述的用于人工智能学习的处理方法,其特征在于,所述确定所述第一节点中由图形处理器执行的任务对应的第二节点构成的第二节点子图包括:
确定所述第一节点中由所述图形处理器执行的任务对应的第二节点;
将所述第二节点中在执行的顺序上存在相同相邻节点的第三节点及所述相邻节点集合在一起组成所述第二节点子图,所述执行的顺序包括并列执行顺序及顺序执行顺序。
4.如权利要求1所述的用于人工智能学习的处理方法,其特征在于,所述确定所述第二节点子图中的有向无环子图包括:
确定所述第二节点子图中的顺序节点;
根据所述顺序节点确定有向无环子图。
5.如权利要求1所述的用于人工智能学习的处理方法,其特征在于,所述合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
6.如权利要求5所述的用于人工智能学习的处理方法,其特征在于,所述根据所述图形处理器的处理能力合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务包括:
根据所述图形处理器的处理能力将包括至少两个第二节点的有向无环子图切分为子有向无环子图;
合并包括至少两个第二节点的子有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
7.如权利要求1所述的用于人工智能学习的处理方法,其特征在于,所述方法还包括:
将合并的所述任务传送至所述图形处理器执行;
在所述图形处理器执行完成所述合并的所述任务后,发送一次中断信号至所述中央处理器。
8.一种用于人工智能学习的处理装置,其特征在于,所述装置包括:
构建模块,用于将模型构建为包括多个第一节点的有向图,所述模型包括多个任务,多个所述第一节点代表的任务由中央处理器及图形处理器执行;
第二节点子图确定模块,用于确定所述第一节点中由所述图形处理器执行的任务对应的第二节点构成的第二节点子图;
有向无环子图确定模块,用于确定所述第二节点子图中的有向无环子图;
合并模块,用于合并包括至少两个第二节点的有向无环子图中的所述至少两个第二节点代表的任务为一个任务。
9.一种设备,其特征在于,所述设备包括一个或多个处理器及存储器,所述处理器用于执行所述存储器中存储的至少一个指令时实现如权利要求1至7中任意一项所述的用于人工智能学习的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行以实现如权利要求1至7中任意一项所述的用于人工智能学习的处理方法。
CN202011126557.1A 2020-10-20 2020-10-20 用于人工智能学习的处理方法及装置、设备及存储介质 Active CN114387150B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011126557.1A CN114387150B (zh) 2020-10-20 2020-10-20 用于人工智能学习的处理方法及装置、设备及存储介质
US17/506,630 US20220121943A1 (en) 2020-10-20 2021-10-20 Method and device for aggregating tasks for execution by cpu and gpu during artificial intelligence learning, electronic device using method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011126557.1A CN114387150B (zh) 2020-10-20 2020-10-20 用于人工智能学习的处理方法及装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114387150A true CN114387150A (zh) 2022-04-22
CN114387150B CN114387150B (zh) 2024-10-22

Family

ID=81186310

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011126557.1A Active CN114387150B (zh) 2020-10-20 2020-10-20 用于人工智能学习的处理方法及装置、设备及存储介质

Country Status (2)

Country Link
US (1) US20220121943A1 (zh)
CN (1) CN114387150B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101023445A (zh) * 2004-09-22 2007-08-22 索尼计算机娱乐公司 图形处理器的存储器控制方法
US20110231849A1 (en) * 2010-03-18 2011-09-22 International Business Machines Corporation Optimizing Workflow Engines
CN105721211A (zh) * 2016-02-24 2016-06-29 北京格灵深瞳信息技术有限公司 一种数据处理的方法及装置
CN108734286A (zh) * 2017-04-24 2018-11-02 英特尔公司 在推断期间中对图形处理器的协调和增加利用
CN109523187A (zh) * 2018-11-27 2019-03-26 北京字节跳动网络技术有限公司 任务调度方法、装置和设备
CN109814986A (zh) * 2017-11-20 2019-05-28 上海寒武纪信息科技有限公司 任务并行处理方法、存储介质、计算机设备、装置和系统
CN110689116A (zh) * 2019-09-24 2020-01-14 上海寒武纪信息科技有限公司 一种神经网络剪枝方法、装置、计算机设备及存储介质
CN111061551A (zh) * 2019-12-06 2020-04-24 深圳前海微众银行股份有限公司 节点的合并调度方法、装置、设备及存储介质
CN111258740A (zh) * 2020-02-03 2020-06-09 北京无限光场科技有限公司 一种用于启动应用程序的方法、装置和电子设备
CN111399911A (zh) * 2020-03-24 2020-07-10 杭州博雅鸿图视频技术有限公司 一种基于多核异构计算的人工智能开发方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8473948B1 (en) * 2007-08-08 2013-06-25 Nvidia Corporation Method for synchronizing independent cooperative thread arrays running on a graphics processing unit
US10089264B2 (en) * 2016-05-13 2018-10-02 Intel Corporation Callback interrupt handling for multi-threaded applications in computing environments
US11556756B2 (en) * 2019-04-25 2023-01-17 Alibaba Group Holding Limited Computation graph mapping in heterogeneous computer system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101023445A (zh) * 2004-09-22 2007-08-22 索尼计算机娱乐公司 图形处理器的存储器控制方法
US20110231849A1 (en) * 2010-03-18 2011-09-22 International Business Machines Corporation Optimizing Workflow Engines
CN105721211A (zh) * 2016-02-24 2016-06-29 北京格灵深瞳信息技术有限公司 一种数据处理的方法及装置
CN108734286A (zh) * 2017-04-24 2018-11-02 英特尔公司 在推断期间中对图形处理器的协调和增加利用
CN109814986A (zh) * 2017-11-20 2019-05-28 上海寒武纪信息科技有限公司 任务并行处理方法、存储介质、计算机设备、装置和系统
CN109523187A (zh) * 2018-11-27 2019-03-26 北京字节跳动网络技术有限公司 任务调度方法、装置和设备
CN110689116A (zh) * 2019-09-24 2020-01-14 上海寒武纪信息科技有限公司 一种神经网络剪枝方法、装置、计算机设备及存储介质
CN111061551A (zh) * 2019-12-06 2020-04-24 深圳前海微众银行股份有限公司 节点的合并调度方法、装置、设备及存储介质
CN111258740A (zh) * 2020-02-03 2020-06-09 北京无限光场科技有限公司 一种用于启动应用程序的方法、装置和电子设备
CN111399911A (zh) * 2020-03-24 2020-07-10 杭州博雅鸿图视频技术有限公司 一种基于多核异构计算的人工智能开发方法及装置

Also Published As

Publication number Publication date
US20220121943A1 (en) 2022-04-21
CN114387150B (zh) 2024-10-22

Similar Documents

Publication Publication Date Title
CN109523187B (zh) 任务调度方法、装置和设备
CN109657782B (zh) 运算方法、装置及相关产品
CN111338695B (zh) 基于流水线技术的数据处理方法及相关产品
US8959094B2 (en) Early return of partial sort results in a database system
EP3564863A1 (en) Apparatus for executing lstm neural network operation, and operational method
EP4071619A1 (en) Address generation method, related device and storage medium
CN112035238A (zh) 任务调度处理方法、装置、集群系统及可读存储介质
CN109544439B (zh) 一种基于多核处理器的解码方法、终端设备及存储介质
CN114548383A (zh) 一种面向神经网络模型计算的图执行流水并行方法和装置
CN111582459A (zh) 执行操作的方法、电子设备、装置及存储介质
CN109753319B (zh) 一种释放动态链接库的装置及相关产品
CN109711540B (zh) 一种计算装置及板卡
CN114387150B (zh) 用于人工智能学习的处理方法及装置、设备及存储介质
CN109308327A (zh) 基于子图模型兼容点中心模型的图计算方法装置介质设备
CN114065948A (zh) 构建预训练模型的方法、装置、终端设备和存储介质
TWI777277B (zh) 用於人工智慧學習之處理方法及裝置、設備及存儲介質
US20230273826A1 (en) Neural network scheduling method and apparatus, computer device, and readable storage medium
CN111242684A (zh) 一种广告投放方法
CN110825461A (zh) 数据处理方法和装置
CN111340215B (zh) 一种网络模型推理加速方法、装置、存储介质和智能设备
CN114693919A (zh) 一种目标检测方法、终端设备及存储介质
CN112965698B (zh) 自动驾驶软件架构平台、构建方法和构建装置
CN110597521B (zh) 数据处理方法、电子设备和介质
CN111124686B (zh) 资源调度方法、装置及相关设备
RU2092895C1 (ru) Устройство представления и использования знаний

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