[go: up one dir, main page]

CN110825461B - Data processing method and device - Google Patents

Data processing method and device Download PDF

Info

Publication number
CN110825461B
CN110825461B CN201810909838.0A CN201810909838A CN110825461B CN 110825461 B CN110825461 B CN 110825461B CN 201810909838 A CN201810909838 A CN 201810909838A CN 110825461 B CN110825461 B CN 110825461B
Authority
CN
China
Prior art keywords
node
data
ready
status
information
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
Application number
CN201810909838.0A
Other languages
Chinese (zh)
Other versions
CN110825461A (en
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.)
Kunlun Core Beijing Technology Co ltd
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Kunlun Core Beijing Technology Co ltd
Beijing Baidu Netcom Science and Technology 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 Kunlun Core Beijing Technology Co ltd, Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Kunlun Core Beijing Technology Co ltd
Priority to CN201810909838.0A priority Critical patent/CN110825461B/en
Publication of CN110825461A publication Critical patent/CN110825461A/en
Application granted granted Critical
Publication of CN110825461B publication Critical patent/CN110825461B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了数据处理方法和装置。该方法的一具体实施方式包括:一种数据处理方法,该方法包括:接收待处理静态图结构数据,待处理静态图结构数据包括至少一个节点和就绪节点信息列表;从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。该实施方式实现了节约运算时间。

The embodiments of this application disclose data processing methods and devices. A specific implementation of the method includes: a data processing method, which method includes: receiving static graph structure data to be processed, the static graph structure data to be processed includes at least one node and a ready node information list; selecting from the ready node information list Ready node information, execute the operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as the executing state; in response to the completion of the operation corresponding to the node indicated by the selected ready node information , mark the status of the node indicated by the selected ready node information as completed. This implementation saves computing time.

Description

数据处理方法和装置Data processing methods and devices

技术领域Technical field

本申请实施例涉及计算机技术领域,具体涉及数据处理方法和装置。The embodiments of this application relate to the field of computer technology, and specifically to data processing methods and devices.

背景技术Background technique

随着人工智能技术的快速发展,人工神经网络的参数和训练数据也不断增加。与此同时,人工神经网络训练过程中的运算量也不断增大。为了解决这些问题,一般采用不同的计算单元执行运算任务。其中,每种计算单元执行某一类特定的运算(例如矩阵运算、激活运算等)。这样会极大的提高运算速度。目前,这些计算单元由宿主机上的中央处理器(CPU,Central Processing Unit)进行控制。当某个计算单元的运算任务执行完毕后,通过与CPU通信以接收下一项运算任务。With the rapid development of artificial intelligence technology, the parameters and training data of artificial neural networks are also increasing. At the same time, the amount of calculations in the training process of artificial neural networks is also increasing. In order to solve these problems, different computing units are generally used to perform computing tasks. Among them, each computing unit performs a certain type of specific operation (such as matrix operation, activation operation, etc.). This will greatly improve the computing speed. Currently, these computing units are controlled by the central processing unit (CPU) on the host computer. When the computing task of a certain computing unit is completed, the next computing task is received by communicating with the CPU.

发明内容Contents of the invention

本申请实施例提出了数据处理方法和装置。The embodiments of this application provide data processing methods and devices.

第一方面,本申请实施例提供了一种数据处理方法,该方法包括:接收待处理静态图结构数据,待处理静态图结构数据包括至少一个节点和就绪节点信息列表;从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。In a first aspect, embodiments of the present application provide a data processing method, which method includes: receiving static graph structure data to be processed, where the static graph structure data to be processed includes at least one node and a ready node information list; from the ready node information list Select the ready node information, perform the operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as the executing state; in response to the operation corresponding to the node indicated by the selected ready node information, execute Completed, mark the status of the node indicated by the selected ready node information as completed.

在一些实施例中,该方法还包括:确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态;响应于确定后继节点的前驱节点的状态为已完成状态,将后继节点的节点信息加入就绪节点信息列表。In some embodiments, the method further includes: determining the status of the predecessor node of the successor node of the node indicated by the selected ready node information; in response to determining that the status of the predecessor node of the successor node is the completed status, changing the status of the successor node The node information is added to the ready node information list.

在一些实施例中,该方法还包括:响应于确定至少一个节点中的节点的状态为已完成状态,发送用于表征待处理静态图结构数据处理完成的提示信息。In some embodiments, the method further includes: in response to determining that the status of a node in the at least one node is a completed status, sending prompt information indicating completion of processing of the static graph structure data to be processed.

第二方面,本申请实施例提供了一种数据处理方法,包括:获取待处理数据;将待处理数据处理为静态图结构数据,静态图结构数据包括至少一个节点和就绪节点信息列表。In the second aspect, embodiments of the present application provide a data processing method, including: obtaining data to be processed; and processing the data to be processed into static graph structure data, where the static graph structure data includes at least one node and a ready node information list.

第三方面,本申请实施例提供了一种数据处理装置,该装置包括:接收单元,被配置成接收待处理静态图结构数据,待处理静态图结构数据包括至少一个节点和就绪节点信息列表;执行单元,被配置成从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;标记单元,被配置成响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。In a third aspect, embodiments of the present application provide a data processing device, which device includes: a receiving unit configured to receive static graph structure data to be processed, where the static graph structure data to be processed includes at least one node and a ready node information list; The execution unit is configured to select ready node information from the ready node information list, perform operations corresponding to the nodes indicated by the selected ready node information, and mark the status of the node performing the operation as an executing state; the marking unit is It is configured to mark the status of the node indicated by the selected ready node information as a completed state in response to completion of the operation corresponding to the node indicated by the selected ready node information.

在一些实施例中,该装置还包括:状态确定单元,被配置成确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态;加入单元,被配置成响应于确定后继节点的前驱节点的状态为已完成状态,将后继节点的节点信息加入就绪节点信息列表。In some embodiments, the apparatus further includes: a status determination unit configured to determine the status of a predecessor node of a successor node of the node indicated by the selected ready node information; a joining unit configured to respond to determining the status of the successor node. The status of the predecessor node is completed, and the node information of the successor node is added to the ready node information list.

在一些实施例中,该装置还包括:发送单元,被配置成响应于确定至少一个节点中的节点的状态为已完成状态,发送用于表征待处理静态图结构数据处理完成的提示信息。In some embodiments, the apparatus further includes: a sending unit configured to send prompt information indicating completion of processing of the static graph structure data to be processed in response to determining that the status of a node in at least one node is a completed status.

第四方面,本申请实施例提供了一种数据处理装置,包括:数据获取单元,被配置成获取待处理数据;数据处理单元,被配置成将待处理数据处理为静态图结构数据,静态图结构数据包括至少一个节点和就绪节点信息列表。In the fourth aspect, embodiments of the present application provide a data processing device, including: a data acquisition unit configured to acquire data to be processed; a data processing unit configured to process the data to be processed into static graph structure data, the static graph The structure data includes at least one node and a list of ready node information.

第五方面,本申请实施例提供了一种电子设备,包括:一个或多个通用处理器;一个或多个芯片;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个芯片执行,使得一个或多个芯片实现如第一方面中任一实现方式描述的方法,当一个或多个程序被一个或多个通用处理器执行,使得一个或多个通用处理器实现如第二方面中任一实现方式描述的方法。In a fifth aspect, embodiments of the present application provide an electronic device, including: one or more general-purpose processors; one or more chips; a storage device on which one or more programs are stored. When one or more programs Executed by one or more chips, causing one or more chips to implement the method described in any implementation manner in the first aspect, when one or more programs are executed by one or more general-purpose processors, such that one or more general-purpose processors The processor implements the method described in any implementation manner of the second aspect.

第六方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,上述程序被处理器执行时实现如第一方面中任一实现方式描述的方法。In a sixth aspect, embodiments of the present application provide a computer-readable medium on which a computer program is stored. When the program is executed by a processor, the method described in any implementation manner in the first aspect is implemented.

本申请实施例提供的数据处理方法和装置,通过对待处理静态图结构数据中的节点选取和对节点对应的运算的执行,完成对待处理静态图结构数据的处理。在此过程中,可以由一个或多个执行主体多次执行选取和执行操作,而不需要每次执行完一个运算任务后,与主体通信以获取下一项运算任务。由此,可以节约运算时间。The data processing method and device provided by the embodiments of the present application complete the processing of the static graph structure data to be processed by selecting nodes in the static graph structure data to be processed and executing operations corresponding to the nodes. In this process, one or more execution subjects can perform selection and execution operations multiple times, without the need to communicate with the subject to obtain the next computing task each time after executing a computing task. This can save computing time.

附图说明Description of drawings

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:Other features, objects and advantages of the present application will become more apparent by reading the detailed description of the non-limiting embodiments with reference to the following drawings:

图1是本申请的一个实施例可以应用于其中的示例性系统架构图;Figure 1 is an exemplary system architecture diagram in which an embodiment of the present application can be applied;

图2是根据本申请的数据处理方法的一个实施例的流程图;Figure 2 is a flow chart of an embodiment of a data processing method according to the present application;

图3是根据本申请实施例的数据处理方法的又一个实施例的流程图;Figure 3 is a flow chart of another embodiment of the data processing method according to the embodiment of the present application;

图4是根据本申请的数据处理方法的一个实施例的流程图;Figure 4 is a flow chart of an embodiment of a data processing method according to the present application;

图5是根据本申请的数据处理装置的一个实施例的结构示意图;Figure 5 is a schematic structural diagram of an embodiment of a data processing device according to the present application;

图6是根据本申请的数据处理装置的又一个实施例的结构示意图;Figure 6 is a schematic structural diagram of another embodiment of a data processing device according to the present application;

图7是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。FIG. 7 is a schematic structural diagram of a computer system suitable for implementing an electronic device according to an embodiment of the present application.

具体实施方式Detailed ways

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。The present application will be further described in detail below in conjunction with the accompanying drawings and examples. It can be understood that the specific embodiments described here are only used to explain the relevant invention, but not to limit the invention. It should also be noted that, for convenience of description, only the parts related to the invention are shown in the drawings.

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。It should be noted that, as long as there is no conflict, the embodiments and features in the embodiments of this application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and embodiments.

图1示出了可以应用本申请实施例的数据处理方法或数据处理装置的示例性系统架构100。FIG. 1 shows an exemplary system architecture 100 to which the data processing method or data processing device according to the embodiment of the present application can be applied.

如图1所示,系统架构100可以包括CPU101、芯片102、103、104。其中,CPU101和芯片102、103、104可以通过总线连接,以实现通信。CPU101可以是广泛应用于各种电子设备中的重要组件。CPU101可以用于解释计算机指令以及处理内存中的数据。芯片102、103、104可以是支持各种运算的集成电路。As shown in FIG. 1 , the system architecture 100 may include a CPU 101 and chips 102 , 103 , and 104 . Among them, the CPU 101 and the chips 102, 103, and 104 can be connected through a bus to achieve communication. The CPU 101 may be an important component widely used in various electronic devices. CPU 101 can be used to interpret computer instructions and process data in memory. Chips 102, 103, and 104 may be integrated circuits that support various operations.

需要说明的是,本申请实施例所提供的数据处理方法一般由芯片102、103、104执行。相应的,信息处理装置一般设置于芯片102、103、104中。It should be noted that the data processing method provided by the embodiment of the present application is generally executed by chips 102, 103, and 104. Correspondingly, information processing devices are generally provided in chips 102, 103, and 104.

应该理解,图1中的CPU和芯片的数目仅仅是示意性的。根据实现需要,可以具有任意数目的CPU和芯片。此外,多个芯片之间的连接方式不限于图1所示的级联方式。可以根据需要,采用各种连接方式连接多个芯片。It should be understood that the number of CPUs and chips in Figure 1 is only illustrative. Depending on implementation needs, you can have any number of CPUs and chips. In addition, the connection method between multiple chips is not limited to the cascade method shown in FIG. 1 . Multiple chips can be connected using various connection methods as needed.

继续参考图2,示出了根据本申请的数据处理方法的一个实施例的流程200。该数据处理方法,包括以下步骤:Continuing to refer to FIG. 2 , a process 200 according to one embodiment of the data processing method of the present application is shown. This data processing method includes the following steps:

步骤201,接收待处理静态图结构数据。Step 201: Receive static image structure data to be processed.

在本实施例中,数据处理方法的执行主体(例如,图1中的芯片102、103、104)可以首先接收待处理静态图结构数据。其中,待处理静态图结构数据可以是数据结构为图结构的数据。图结构,也可以简称“图”,是一种常见的数据结构。静态图结构数据的存储方法包括:邻接矩阵、邻接表等等。待处理静态图结构数据可以是任意的静态图结构数据。待处理静态图结构数据的确定可以由技术人员指定,也可以根据一定的条件筛选得到。In this embodiment, the execution body of the data processing method (for example, the chips 102, 103, and 104 in Figure 1) may first receive the static graph structure data to be processed. The static graph structure data to be processed may be data whose data structure is a graph structure. Graph structure, also referred to as "graph", is a common data structure. Storage methods for static graph structure data include: adjacency matrix, adjacency list, etc. The static graph structure data to be processed can be any static graph structure data. The static graph structure data to be processed can be specified by technical personnel or filtered based on certain conditions.

实践中,静态图结构数据中一般会包括多个节点。对于其中的一个节点,可以存在前驱节点和后继节点。其中,前驱节点可以是该节点逻辑顺序“前面”的节点。同理,后继节点可以是该节点逻辑顺序“后面”的节点。每个节点的前驱节点和后继节点均可以有多个。因此,待处理静态图结构数据中可以包括至少一个节点。这些节点之间可以有连接关系。此外,待处理静态图结构数据中还包括就绪节点信息列表。其中,就绪节点信息可以是就绪节点的节点信息。对于一个节点,如果该节点的所有前驱节点的状态均为已完成状态,那么该节点为就绪节点。如果该节点没有前驱节点,那么该节点也是就绪节点。In practice, static graph structure data generally includes multiple nodes. For one of the nodes, there can be a predecessor node and a successor node. Among them, the predecessor node can be the node "before" the node in logical sequence. In the same way, the successor node can be the node "behind" the node in logical sequence. Each node can have multiple predecessor nodes and successor nodes. Therefore, the static graph structure data to be processed may include at least one node. There can be connections between these nodes. In addition, the static graph structure data to be processed also includes a ready node information list. The ready node information may be the node information of the ready node. For a node, if the status of all predecessor nodes of the node is completed, then the node is a ready node. If the node has no predecessor node, then the node is also a ready node.

步骤202,从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态。Step 202: Select the ready node information from the ready node information list, perform the operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as the executing status.

在本实施例中,上述执行主体可以采用多种方式从就绪节点信息列表中选取就绪节点信息。例如,随机选取、按加入列表的时间由前向后顺序选取等等。本申请对于选取方式不作限制。In this embodiment, the execution subject can select ready node information from the ready node information list in various ways. For example, select randomly, select from front to back according to the time of joining the list, etc. There is no restriction on the selection method in this application.

在此基础上,上述执行主体可以执行所选取的就绪节点信息所指示的节点对应的运算。通过步骤201中的描述可知,图形结构作为一种数据结构,可以是存储、组织数据的方式。其中,数据可以是任何数据。也就是说,根据需要,静态图结构数据中的节点可以是各种数据。On this basis, the above execution subject can perform operations corresponding to the nodes indicated by the selected ready node information. It can be seen from the description in step 201 that the graph structure, as a data structure, can be a way to store and organize data. Among them, the data can be any data. That is to say, the nodes in the static graph structure data can be various data according to needs.

在本实施例中,待处理静态图结构数据中的节点可以包括但不限于:待运算的数据、数据描述信息、执行运算所需代码信息、图形结构描述信息、数据的执行状态等等。因此,每个节点可以看作对应一个或多个运算。从而,上述执行主体可以对于所选取的就绪节点信息所指示的节点,根据存储的执行运算所需代码信息执行相关代码,对待运算的数据进行执行相应的运算。即,执行该节点对应的运算。作为示例,可以是矩阵运算、激活运算等各种运算。In this embodiment, the nodes in the static graph structure data to be processed may include but are not limited to: data to be operated, data description information, code information required to perform operations, graph structure description information, execution status of the data, etc. Therefore, each node can be viewed as corresponding to one or more operations. Therefore, the above-mentioned execution subject can execute the relevant code according to the stored code information required to perform the operation for the node indicated by the selected ready node information, and perform the corresponding operation on the data to be operated. That is, perform the operation corresponding to the node. As examples, various operations such as matrix operations and activation operations can be used.

此外,上述执行主体可以将上述所选取的就绪节点信息所指示的节点的状态标记为执行中状态。实践中,可以根据需要,用各种标识符(例如,数字、字符等)标识节点的状态。作为示例,执行中状态可以用数字“1”标识。In addition, the execution subject may mark the status of the node indicated by the selected ready node information as the executing status. In practice, various identifiers (for example, numbers, characters, etc.) can be used to identify the status of the node as needed. As an example, the executing status may be identified by the number "1".

步骤203,响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。Step 203: In response to the completion of the operation corresponding to the node indicated by the selected ready node information, mark the status of the node indicated by the selected ready node information as a completed status.

在本实施例中,上述执行主体响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,可以将选取的就绪节点信息所指示的节点(也即运算执行完成的节点)的状态标记为已完成状态。In this embodiment, in response to the execution of the operation corresponding to the node indicated by the selected ready node information, the execution subject may mark the status of the node indicated by the selected ready node information (that is, the node where the operation execution is completed). is completed status.

本申请上述实施例提供的数据处理方法,通过对待处理静态图结构数据中的节点选取和对节点对应的运算的执行,完成对待处理静态图结构数据的处理。在此过程中,可以由一个或多个执行主体多次执行选取和执行操作,而不需要每次执行完一个运算任务后,与主体通信以获取下一项运算任务。由此,可以节约运算时间。The data processing method provided by the above embodiments of the present application completes the processing of the static graph structure data to be processed by selecting nodes in the static graph structure data to be processed and executing operations corresponding to the nodes. In this process, one or more execution subjects can perform selection and execution operations multiple times, without the need to communicate with the subject to obtain the next computing task each time after executing a computing task. This can save computing time.

进一步参考图3,其示出了数据处理方法的又一个实施例的流程300。该数据处理方法的流程300,包括以下步骤:Referring further to FIG. 3 , a flow 300 of yet another embodiment of a data processing method is shown. The process 300 of the data processing method includes the following steps:

步骤301,步骤接收待处理静态图结构数据,待处理静态图结构数据包括至少一个节点和就绪节点信息列表。Step 301: Receive static graph structure data to be processed. The static graph structure data to be processed includes at least one node and a ready node information list.

步骤302,从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态。Step 302: Select the ready node information from the ready node information list, perform the operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as the executing status.

步骤303,响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。Step 303: In response to the completion of the operation corresponding to the node indicated by the selected ready node information, mark the status of the node indicated by the selected ready node information as a completed state.

在本实施例中,步骤301-303的具体实现及其所带来的技术效果可以参考图2对应的实施例中的步骤201-203,在此不再赘述。In this embodiment, the specific implementation of steps 301-303 and the technical effects thereof can be referred to steps 201-203 in the corresponding embodiment of Figure 2, which will not be described again here.

步骤304,确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态。Step 304: Determine the status of the predecessor node of the node indicated by the selected ready node information.

在本实施例中,对于所选取的就绪节点信息所指示的节点,数据处理方法的执行主体可以在执行完成该节点对应的运算后,遍历该节点的每一个后继节点。对于每一个后继节点,上述执行主体可以确定该后继节点的多个前驱节点中每个前驱节点的状态。In this embodiment, for the node indicated by the selected ready node information, the execution subject of the data processing method can traverse each subsequent node of the node after completing the operation corresponding to the node. For each successor node, the above execution subject can determine the status of each predecessor node among multiple predecessor nodes of the successor node.

步骤305,响应于确定后继节点的前驱节点的状态为已完成状态,将后继节点的节点信息加入就绪节点信息列表。Step 305: In response to determining that the status of the predecessor node of the successor node is the completed state, add the node information of the successor node to the ready node information list.

在本实施例中,在步骤304的基础上,响应于确定一个后继节点的各个前驱节点的状态均为已完成状态,上述执行主体可以将该后继节点的节点信息加入就绪节点信息列表。其中,节点信息可以是节点的相关信息。作为示例,可以是节点的标识、编号等等。需要说明的是,从步骤304中的说明可知,上述执行主体可以遍历一个节点的每一个后继节点。从而可以将就绪节点的节点信息加入就绪节点信息列表。In this embodiment, based on step 304, in response to determining that the status of each predecessor node of a successor node is the completed state, the execution subject may add the node information of the successor node to the ready node information list. The node information may be node-related information. As an example, it could be the node's identification, number, etc. It should be noted that, as can be seen from the description in step 304, the above execution subject can traverse every subsequent node of a node. Thus, the node information of the ready node can be added to the ready node information list.

步骤306,响应于确定至少一个节点中的节点的状态为已完成状态,发送用于表征待处理静态图结构数据处理完成的提示信息。Step 306: In response to determining that the status of the node in at least one node is the completed status, send prompt information indicating that the processing of the static graph structure data to be processed is completed.

在本实施例中,响应于确定至少一个节点中的所有节点的状态均为已完成状态,上述执行主体可以发送用于表征待处理静态图结构数据处理完成的提示信息。其中,提示信息可以是各种形式的信息。作为示例,可以是中断(Interrupt)信号。中断是一种被广泛应用的处理单元与硬件设备进行通信的方式。In this embodiment, in response to determining that the status of all nodes in at least one node is the completed status, the execution subject may send prompt information indicating that the static graph structure data to be processed is completed. The prompt information can be in various forms of information. As an example, it may be an interrupt signal. Interrupts are a widely used way for processing units to communicate with hardware devices.

从图3中可以看出,与图2对应的实施例相比,本实施例的数据处理方法的流程300中增加了对于运算执行完成的节点的后继节点的状态的确定的步骤。通过确定后续节点的前驱节点的状态,以确定后续节点是否为就绪状态,从而将就绪的后继节点的节点信息加入就绪节点信息列表。由此,实现了对于就绪节点信息列表的更新,并进一步执行完成待处理静态图结构数据。As can be seen from Figure 3, compared with the embodiment corresponding to Figure 2, the flow 300 of the data processing method of this embodiment adds a step of determining the status of the successor node of the node where the operation execution is completed. By determining the status of the predecessor node of the subsequent node, it is determined whether the subsequent node is in a ready state, and the node information of the ready successor node is added to the ready node information list. As a result, the ready node information list is updated, and the static graph structure data to be processed is further executed.

进一步参考图4,其示出了本申请的数据处理方法的一个实施例的流程图400。该数据处理方法,包括以下步骤:Referring further to FIG. 4 , a flowchart 400 of one embodiment of the data processing method of the present application is shown. This data processing method includes the following steps:

步骤401,获取待处理数据。Step 401: Obtain data to be processed.

在本实施例中,数据处理方法的执行主体(例如图1中的CPU101)可以获取待处理数据。其中,静态计算图在机器学习领域被广泛应用。具体来说,在静态计算图描述的数据中,计算图的声明和执行是分开的。待处理数据可以是各种数据。例如,可以是用于表示人工神经网络的参数和结构的数据。待处理数据的确定可以由技术人员指定,也可以根据一定的条件筛选得到。In this embodiment, the execution subject of the data processing method (for example, the CPU 101 in Figure 1) can obtain the data to be processed. Among them, static calculation graphs are widely used in the field of machine learning. Specifically, in data described by static computation graphs, the declaration and execution of the computation graph are separated. The data to be processed can be various data. For example, it may be data representing the parameters and structure of an artificial neural network. The data to be processed can be specified by technical personnel or filtered based on certain conditions.

步骤402,将待处理数据处理为静态图结构数据,静态图结构数据包括至少一个节点和就绪节点信息列表。Step 402: Process the data to be processed into static graph structure data. The static graph structure data includes at least one node and a ready node information list.

在本实施例中,上述执行主体可以将待处理处理为适于处理单元(例如图1中的芯片102、103、104)处理的静态图结构数据。实践中,一般的深度学习框架会提供某种简单的方式描述或数据计算图。作为示例,目前主流的深度学习框架会提供Python接口,以便用户描述具体的人工神经网络,但其底层逻辑的实现则采用C++。当用户用Python描述人工神经网络后,上述执行主体可以将用户描述的人工神经网络转换为以C++为基础的静态图结构数据。其中,Python和C++均为常用的计算机程序设计语言。在此过程中,作为示例,上述执行主体还可以分配一定的内存,绑定相关的参数等等。并将内存分配信息和绑定的参数信息等作为图像结构数据的一部分。In this embodiment, the above-mentioned execution subject can process the to-be-processed data into static graph structure data suitable for processing by the processing unit (such as the chips 102, 103, and 104 in Figure 1). In practice, the general deep learning framework will provide some simple way to describe or calculate the data graph. As an example, the current mainstream deep learning framework will provide a Python interface to allow users to describe specific artificial neural networks, but the underlying logic is implemented in C++. When the user describes the artificial neural network in Python, the above execution body can convert the artificial neural network described by the user into static graph structure data based on C++. Among them, Python and C++ are commonly used computer programming languages. During this process, as an example, the above execution subject can also allocate a certain amount of memory, bind related parameters, and so on. And use memory allocation information and bound parameter information as part of the image structure data.

本申请的上述实施例提供的数据处理方法,可以将待处理数据处理为静态图结构数据。由于后续处理单元(例如图1中的芯片102、103、104)主要用于计算,而逻辑控制能力有限。而静态图结构数据中包含了待运算的数据、执行运算所需代码信息等信息,后续处理单元可以根据这些信息进行处理。从而提高待处理数据的处理速度。The data processing method provided by the above embodiments of the present application can process the data to be processed into static graph structure data. Since the subsequent processing units (such as the chips 102, 103, and 104 in Figure 1) are mainly used for calculation, their logical control capabilities are limited. The static graph structure data contains information such as data to be operated, code information required to perform the operation, etc. Subsequent processing units can process based on this information. Thereby increasing the processing speed of data to be processed.

继续参考图5,作为对图2或图3所示的方法的实现,本申请提供了一种数据处理装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。Continuing to refer to Figure 5, as an implementation of the method shown in Figure 2 or Figure 3, this application provides an embodiment of a data processing device. This device embodiment corresponds to the method embodiment shown in Figure 2. The The device can be applied in various electronic devices.

如图5所示,本实施例的数据处理装置500包括:接收单元501、执行单元502和标记单元503。其中,接收单元501被配置成接收待处理静态图结构数据,待处理静态图结构数据包括至少一个节点和就绪节点信息列表;执行单元502被配置成从就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;标记单元503被配置成响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。As shown in FIG. 5 , the data processing device 500 of this embodiment includes: a receiving unit 501 , an execution unit 502 and a marking unit 503 . Among them, the receiving unit 501 is configured to receive the static graph structure data to be processed, and the static graph structure data to be processed includes at least one node and a ready node information list; the execution unit 502 is configured to select the ready node information from the ready node information list, and execute The operation corresponding to the node indicated by the selected ready node information, and the status of the node performing the operation is marked as the executing state; the marking unit 503 is configured to execute the operation corresponding to the node indicated by the selected ready node information. Completed, marks the status of the node indicated by the selected ready node information as completed.

在本实施例中,数据处理装置500中的接收单元501、执行单元502和标记单元503的具体处理及其所带来的技术效果可以参考图2对应的实施例,在此不再赘述。In this embodiment, the specific processing of the receiving unit 501, the execution unit 502 and the marking unit 503 in the data processing device 500 and the technical effects they bring can be referred to the corresponding embodiment in Figure 2, and will not be described again here.

在本实施例的一些可选的实现方式中,数据处理装置500还可以包括:状态确定单元(图中未示出)。状态确定单元被配置成确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态;加入单元,被配置成响应于确定后继节点的前驱节点的状态为已完成状态,将后继节点的节点信息加入就绪节点信息列表。In some optional implementations of this embodiment, the data processing apparatus 500 may further include: a status determination unit (not shown in the figure). The status determination unit is configured to determine the status of the predecessor node of the successor node of the node indicated by the selected ready node information; the joining unit is configured to respond to determining that the status of the predecessor node of the successor node is a completed state, adding the successor node The node information is added to the ready node information list.

在本实施例的一些可选的实现方式中,数据处理装置500还可以包括:发送单元(图中未示出)。发送单元被配置成响应于确定至少一个节点中的节点的状态为已完成状态,发送用于表征待处理静态图结构数据处理完成的提示信息。In some optional implementations of this embodiment, the data processing apparatus 500 may further include: a sending unit (not shown in the figure). The sending unit is configured to send prompt information representing the completion of processing of the static graph structure data to be processed in response to determining that the status of the node in the at least one node is a completed status.

在本实施例中,执行单元502通过对静态图结构数据中的节点选取和对节点对应的运算的执行,完成对静态图结构数据的处理。在此过程中,可以由执行单元502多次执行选取和执行操作,而不需要每次执行完一个运算任务后,与主体通信以获取下一项运算任务。由此,可以节约运算时间。In this embodiment, the execution unit 502 completes the processing of the static graph structure data by selecting nodes in the static graph structure data and executing operations corresponding to the nodes. During this process, the execution unit 502 can perform the selection and execution operations multiple times without the need to communicate with the subject to obtain the next computing task after each execution of a computing task. This can save computing time.

继续参考图6,作为对上述图4所示方法的实现,本申请提供了一种数据处理装置的一个实施例,该装置实施例与图4所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。Continuing to refer to Figure 6, as an implementation of the method shown in Figure 4 above, this application provides an embodiment of a data processing device. The device embodiment corresponds to the method embodiment shown in Figure 4. The device can specifically Used in various electronic equipment.

如图6所示,本实施例的数据处理装置600包括:数据获取单元601和数据处理单元602。其中,数据获取单元601被配置成获取待处理数据。数据处理单元602被配置成将待处理数据处理为静态图结构数据,静态图结构数据包括至少一个节点和就绪节点信息列表。As shown in FIG. 6 , the data processing device 600 of this embodiment includes: a data acquisition unit 601 and a data processing unit 602 . Among them, the data acquisition unit 601 is configured to acquire data to be processed. The data processing unit 602 is configured to process the data to be processed into static graph structure data, where the static graph structure data includes at least one node and a ready node information list.

在本实施例中,数据处理装置600中的具体处理及其所带来的技术效果可以参考图4对应的实施例,在此不再赘述。In this embodiment, the specific processing in the data processing device 600 and the technical effects it brings can be referred to the corresponding embodiment in FIG. 4 , and will not be described again here.

下面参考图7,其示出了适于用来实现本申请实施例的电子设备的计算机系统700的结构示意图。如图7所示,电子设备的系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701也可以通过芯片712进行数据的处理分析。CPU 701、ROM 702、RAM 703以及芯片712通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。需要说明的是,在本实施例中,通用处理器可以是CPU701。Referring now to FIG. 7 , a schematic structural diagram of a computer system 700 suitable for implementing an electronic device according to an embodiment of the present application is shown. As shown in Figure 7, a system 700 of an electronic device includes a central processing unit (CPU) 701, which can be loaded into a random access memory (RAM) 703 according to a program stored in a read-only memory (ROM) 702 or from a storage portion 708. program to perform various appropriate actions and processes. In the RAM 703, various programs and data required for the operation of the system 700 are also stored. The CPU 701 can also process and analyze data through the chip 712 . The CPU 701, ROM 702, RAM 703, and chip 712 are connected to each other through a bus 704. An input/output (I/O) interface 705 is also connected to bus 704. It should be noted that in this embodiment, the general processor may be CPU701.

以下部件连接至I/O接口705:包括触摸屏、按键、鼠标、麦克风、摄像头等的输入部分706;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。The following components are connected to the I/O interface 705: an input part 706 including a touch screen, buttons, mouse, microphone, camera, etc.; an output part 707 including a liquid crystal display (LCD), speakers, etc.; a storage part 708 including a hard disk, etc.; and a communications section 709 including network interface cards such as LAN cards, modems, and the like. The communication section 709 performs communication processing via a network such as the Internet. Driver 710 is also connected to I/O interface 705 as needed. Removable media 711, such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.

特别地,根据本申请公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请公开的实施例可以包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序。该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被芯片712执行时,执行本申请的方法中限定的上述功能。In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart may be implemented as a computer software program. For example, embodiments disclosed herein may include a computer program product including a computer program carried on a computer-readable medium. The computer program contains program code for performing the method illustrated in the flowchart. In such embodiments, the computer program may be downloaded and installed from the network via communication portion 709 and/or installed from removable media 711 . When the computer program is executed by the chip 712, the above functions defined in the method of the present application are performed.

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。It should be noted that the computer-readable medium described in this application may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. The computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or any combination thereof. More specific examples of computer readable storage media may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard drive, random access memory (RAM), read only memory (ROM), removable Programmed read-only memory (EPROM or flash memory), fiber optics, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above. As used herein, a computer-readable storage medium may be any tangible medium that contains or stores a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, in which computer-readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device . Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the foregoing.

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing the operations of the present application may be written in one or more programming languages, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional A procedural programming language - such as "C" or a similar programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In situations involving remote computers, the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through Internet connection).

可以理解的是,附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。It can be understood that the flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, segment, or portion of code that contains one or more logic functions that implement the specified executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown one after another may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved. It will also be noted that each block of the block diagram and/or flowchart illustration, and combinations of blocks in the block diagram and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or operations. , or can be implemented using a combination of specialized hardware and computer instructions.

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、执行单元和标记单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收待处理静态图结构数据的单元”。The units involved in the embodiments of this application can be implemented in software or hardware. The described unit may also be provided in a processor. For example, it may be described as follows: a processor includes a receiving unit, an execution unit and a marking unit. The names of these units do not constitute a limitation on the unit itself under certain circumstances. For example, the receiving unit may also be described as "a unit that receives static graph structure data to be processed."

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备实现各图对应的实施例所描述的方法。As another aspect, this application also provides a computer-readable medium. The computer-readable medium may be included in the electronic device described in the above embodiments; it may also exist independently without being assembled into the electronic device. . The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device implements the method described in the embodiment corresponding to each figure.

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。The above description is only a preferred embodiment of the present application and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in this application is not limited to technical solutions formed by a specific combination of the above technical features, but should also cover any solution consisting of the above technical features or without departing from the above inventive concept. Other technical solutions formed by any combination of equivalent features. For example, a technical solution is formed by replacing the above features with technical features with similar functions disclosed in this application (but not limited to).

Claims (10)

1.一种数据处理方法,包括:1. A data processing method, including: 接收待处理静态图结构数据,所述待处理静态图结构数据包括至少一个节点和就绪节点信息列表,其中,所述节点包括以下至少一项:待运算的数据、数据描述信息、执行运算所需代码信息、图像结构描述信息、数据的执行状态,所述就绪节点信息列表中的就绪节点信息是指就绪节点的节点信息;Receive static graph structure data to be processed. The static graph structure data to be processed includes at least one node and a ready node information list, wherein the node includes at least one of the following: data to be operated, data description information, and information required to perform the operation. Code information, image structure description information, and data execution status. The ready node information in the ready node information list refers to the node information of the ready node; 从所述就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;Select ready node information from the ready node information list, perform the operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as the executing status; 响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。In response to completion of execution of the operation corresponding to the node indicated by the selected ready node information, the status of the node indicated by the selected ready node information is marked as a completed state. 2.根据权利要求1所述的方法,其中,所述方法还包括:2. The method of claim 1, wherein the method further comprises: 确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态;Determine the status of the predecessor node of the successor node of the node indicated by the selected ready node information; 响应于确定所述后继节点的前驱节点的状态为已完成状态,将所述后继节点的节点信息加入所述就绪节点信息列表。In response to determining that the status of the predecessor node of the successor node is a completed state, the node information of the successor node is added to the ready node information list. 3.根据权利要求2所述的方法,其中,所述方法还包括:3. The method of claim 2, wherein the method further comprises: 响应于确定所述至少一个节点中的节点的状态为已完成状态,发送用于表征所述待处理静态图结构数据处理完成的提示信息。In response to determining that the status of the node in the at least one node is a completed status, prompt information indicating completion of processing of the static graph structure data to be processed is sent. 4.一种数据处理方法,包括:4. A data processing method, including: 获取待处理数据;Get data to be processed; 将所述待处理数据处理为静态图结构数据,所述静态图结构数据包括至少一个节点和就绪节点信息列表,所述静态图结构数据用于通过如权利要求1-3中任一项所述的方法处理。The data to be processed is processed into static graph structure data, the static graph structure data includes at least one node and a ready node information list, and the static graph structure data is used as described in any one of claims 1-3 method of processing. 5.一种数据处理装置,包括:5. A data processing device, comprising: 接收单元,被配置成接收待处理静态图结构数据,所述待处理静态图结构数据包括至少一个节点和就绪节点信息列表,其中,所述节点包括以下至少一项:待运算的数据、数据描述信息、执行运算所需代码信息、图像结构描述信息、数据的执行状态,所述就绪节点信息列表中的就绪节点信息是指就绪节点的节点信息;A receiving unit configured to receive static graph structure data to be processed, the static graph structure data to be processed including at least one node and a ready node information list, wherein the node includes at least one of the following: data to be operated, data description information, code information required to perform operations, image structure description information, and data execution status. The ready node information in the ready node information list refers to the node information of the ready node; 执行单元,被配置成从所述就绪节点信息列表中选取就绪节点信息,执行所选取的就绪节点信息所指示的节点对应的运算,以及将执行运算的节点的状态标记为执行中状态;An execution unit configured to select ready node information from the ready node information list, perform an operation corresponding to the node indicated by the selected ready node information, and mark the status of the node performing the operation as an executing status; 标记单元,被配置成响应于所选取的就绪节点信息所指示的节点对应的运算执行完成,将所选取的就绪节点信息所指示的节点的状态标记为已完成状态。The marking unit is configured to mark the status of the node indicated by the selected ready node information as a completed state in response to completion of the operation corresponding to the node indicated by the selected ready node information. 6.根据权利要求5所述的装置,其中,所述装置还包括:6. The device of claim 5, wherein the device further comprises: 状态确定单元,被配置成确定所选取的就绪节点信息所指示的节点的后继节点的前驱节点的状态;a status determination unit configured to determine the status of the predecessor node of the successor node of the node indicated by the selected ready node information; 加入单元,被配置成响应于确定所述后继节点的前驱节点的状态为已完成状态,将所述后继节点的节点信息加入所述就绪节点信息列表。The adding unit is configured to add the node information of the successor node to the ready node information list in response to determining that the status of the predecessor node of the successor node is a completed state. 7.根据权利要求6所述的装置,其中,所述装置还包括:7. The device of claim 6, wherein the device further comprises: 发送单元,被配置成响应于确定所述至少一个节点中的节点的状态为已完成状态,发送用于表征所述待处理静态图结构数据处理完成的提示信息。The sending unit is configured to send prompt information indicating completion of processing of the static graph structure data to be processed in response to determining that the status of the node in the at least one node is a completed status. 8.一种数据处理装置,包括:8. A data processing device, comprising: 数据获取单元,被配置成获取待处理数据;a data acquisition unit configured to acquire data to be processed; 数据处理单元,被配置成将所述待处理数据处理为静态图结构数据,所述静态图结构数据包括至少一个节点和就绪节点信息列表,所述静态图结构数据用于通过如权利要求1-3中任一项所述的方法处理。A data processing unit configured to process the data to be processed into static graph structure data, the static graph structure data including at least one node and a ready node information list, the static graph structure data being used as claimed in claim 1- Use any of the methods described in 3. 9.一种电子设备,包括:9. An electronic device, including: 一个或多个通用处理器;one or more general-purpose processors; 一个或多个芯片;one or more chips; 存储装置,其上存储有一个或多个程序,a storage device on which one or more programs are stored, 响应于所述一个或多个程序被所述一个或多个芯片执行,所述一个或多个芯片实现如权利要求1-3中任一所述的方法,In response to the one or more programs being executed by the one or more chips, the one or more chips implement the method according to any one of claims 1-3, 响应于所述一个或多个程序被所述一个或多个通用处理器执行,所述一个或多个通用处理器实现如权利要求4所述的方法。In response to the one or more programs being executed by the one or more general purpose processors, the one or more general purpose processors implement the method of claim 4 . 10.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。10. A computer-readable medium with a computer program stored thereon, wherein when the program is executed by a processor, the method of any one of claims 1-4 is implemented.
CN201810909838.0A 2018-08-10 2018-08-10 Data processing method and device Active CN110825461B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810909838.0A CN110825461B (en) 2018-08-10 2018-08-10 Data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810909838.0A CN110825461B (en) 2018-08-10 2018-08-10 Data processing method and device

Publications (2)

Publication Number Publication Date
CN110825461A CN110825461A (en) 2020-02-21
CN110825461B true CN110825461B (en) 2024-01-05

Family

ID=69541223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810909838.0A Active CN110825461B (en) 2018-08-10 2018-08-10 Data processing method and device

Country Status (1)

Country Link
CN (1) CN110825461B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111723044A (en) * 2020-06-18 2020-09-29 北京字节跳动网络技术有限公司 Data processing system, state transition method, data intersection method and device
CN117421052B (en) * 2023-11-02 2024-09-10 深圳大学 Hardware automatic execution method, system, equipment and medium for data stream task

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201007489A (en) * 2008-04-29 2010-02-16 Maxiscale Inc Peer-to-peer redundant file server system and methods
CN102148852A (en) * 2009-11-19 2011-08-10 奥多比公司 Dynamic streaming of font subsets
CN102265581A (en) * 2008-12-22 2011-11-30 高通股份有限公司 Secure node identifier assignment in a distributed hash table for peer-to-peer networks
CN102360306A (en) * 2011-10-19 2012-02-22 上海交通大学 Method for extracting and optimizing information of cyclic data flow charts in high-level language codes
CN106604352A (en) * 2016-12-30 2017-04-26 成都大学 Data acquisition method and data acquisition device
CN107329834A (en) * 2017-07-04 2017-11-07 北京百度网讯科技有限公司 Method and apparatus for performing calculating task
CN108027767A (en) * 2015-09-19 2018-05-11 微软技术许可有限责任公司 Register read/write-in sequence
CN108351783A (en) * 2015-10-29 2018-07-31 华为技术有限公司 Method and device for processing tasks in multi-core digital signal processing system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7103586B2 (en) * 2001-03-16 2006-09-05 Gravic, Inc. Collision avoidance in database replication systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201007489A (en) * 2008-04-29 2010-02-16 Maxiscale Inc Peer-to-peer redundant file server system and methods
CN102265581A (en) * 2008-12-22 2011-11-30 高通股份有限公司 Secure node identifier assignment in a distributed hash table for peer-to-peer networks
CN102148852A (en) * 2009-11-19 2011-08-10 奥多比公司 Dynamic streaming of font subsets
CN102360306A (en) * 2011-10-19 2012-02-22 上海交通大学 Method for extracting and optimizing information of cyclic data flow charts in high-level language codes
CN108027767A (en) * 2015-09-19 2018-05-11 微软技术许可有限责任公司 Register read/write-in sequence
CN108351783A (en) * 2015-10-29 2018-07-31 华为技术有限公司 Method and device for processing tasks in multi-core digital signal processing system
CN106604352A (en) * 2016-12-30 2017-04-26 成都大学 Data acquisition method and data acquisition device
CN107329834A (en) * 2017-07-04 2017-11-07 北京百度网讯科技有限公司 Method and apparatus for performing calculating task

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
TIDeFlow: A Parallel Execution Model for High Performance Computing Programs;Daniel Orozco等;《2011 International Conference on Parallel Architectures and Compilation Techniques》;第1页 *
房楠.基于图像显著性的高速公路隧道火灾检测方法研究.《中国优秀硕士学位论文全文数据库 信息科技辑》.2016,(第1期),第I138-843页. *
覃俊等.基于前驱后继节点的社会网络影响最大化算法.《中南民族大学学报(自然科学版)》.2016,第35卷(第4期),第95-100页. *
铁路无线Mesh网络中节点结构研究;张淑玲;《中国高新技术企业》(第第17期期);第144-145页 *
黄龑等.V2X网络中多对多的资源分配.《计算机工程与设计》.2022,第43卷(第9期),第2477-2484页. *

Also Published As

Publication number Publication date
CN110825461A (en) 2020-02-21

Similar Documents

Publication Publication Date Title
JP7012689B2 (en) Command execution method and device
US9298446B2 (en) Unified update tool for multi-protocol network adapter
CN111694617B (en) Processing method of network offline model, artificial intelligence processing device and related products
CN109995805B (en) Intelligent robot management method, terminal device and medium
CN110389748A (en) Service data processing method and terminal equipment
CN111625692B (en) Feature extraction method, device, electronic equipment and computer readable medium
CN113626102A (en) Data processing method and device, electronic equipment and storage medium
CN110941488A (en) Task processing method, device, equipment and storage medium
WO2021217340A1 (en) Ai-based automatic design method and apparatus for universal smart home scheme
CN110825436A (en) Calculation method applied to artificial intelligence chip and artificial intelligence chip
CN110633959A (en) Method, device, equipment and medium for creating approval task based on graph structure
US9710575B2 (en) Hybrid platform-dependent simulation interface
CN110825461B (en) Data processing method and device
CN111324470B (en) Methods and devices for generating information
JP7589260B2 (en) Method and apparatus for processing information - Patents.com
CN119917592A (en) Data source switching method, device, medium and electronic device
CN108023905A (en) Internet of things application system and method
CN119536854A (en) Method, device, equipment and storage medium for business processing
CN118113349A (en) Data processing method and device, data processing system, device and medium
WO2025001577A1 (en) Model generation method and apparatus, electronic device, and storage medium
CN109144864B (en) Method and device for testing window
CN112036576A (en) Data processing method and device based on data form and electronic equipment
CN110825664A (en) Information processing system and method
CN116113922A (en) Quantum state measurement logic to facilitate quantum state measurement backend processes
CN110825438B (en) Method and device for simulating data processing of artificial intelligence chip

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210929

Address after: 2 / F, baidu building, 10 Shangdi 10th Street, Haidian District, Beijing 100085

Applicant after: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

Applicant after: Kunlun core (Beijing) Technology Co.,Ltd.

Address before: 2 / F, baidu building, 10 Shangdi 10th Street, Haidian District, Beijing 100085

Applicant before: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant