CN121680914A - Information processing method, device and system - Google Patents

Information processing method, device and system

Info

Publication number
CN121680914A
CN121680914A CN202411299422.3A CN202411299422A CN121680914A CN 121680914 A CN121680914 A CN 121680914A CN 202411299422 A CN202411299422 A CN 202411299422A CN 121680914 A CN121680914 A CN 121680914A
Authority
CN
China
Prior art keywords
data
data processing
parameters
processing
configuration template
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.)
Pending
Application number
CN202411299422.3A
Other languages
Chinese (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202411299422.3A priority Critical patent/CN121680914A/en
Priority to PCT/CN2025/101724 priority patent/WO2026056390A1/en
Publication of CN121680914A publication Critical patent/CN121680914A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Advance Control (AREA)

Abstract

The application relates to the technical field of computers and provides an information processing method, device and system. The configuration template comprises processing parameters of the data processing task and a pointer for indicating a target storage space, the target storage space is used for storing data indicating parameters of the data processing task, and the accelerator is used for acquiring the processing parameters and the data indicating parameters according to a configuration result and executing the data processing task according to the processing parameters and the data indicating parameters. By the method, the operation amount of a processor configuring the accelerator and the transmission data amount can be reduced in the process of sending the data processing task to the accelerator, and the processing efficiency of the process is improved.

Description

Information processing method, device and system
Technical Field
The present application relates to the field of computer technologies, and in particular, to an information processing method, apparatus, and system.
Background
In the field of information technology, a general-purpose processor may send data processing tasks generated or received by the general-purpose processor to an accelerator for processing. The processing capacity of the accelerator in some computing types can be stronger than that of a general-purpose processor, and the effects of improving the processing efficiency of data processing tasks and the like can be achieved. In the process that the general processor sends the data processing task to the accelerator, the task parameters of the data processing task need to be configured to the accelerator so that the accelerator can execute the data processing task according to the task parameters.
At present, in the process that the general processor sends data processing tasks to the accelerator, configuration operation is independently carried out on each data processing task so as to configure each task parameter of each data processing task to the accelerator, so that the general processor has more operation and low configuration efficiency in the process of configuring the accelerator.
Disclosure of Invention
The application provides an information processing method, an information processing device and an information processing system, which can reduce the processor operation amount and the transmission data amount in the process of transmitting a data processing task to an accelerator by a general processor and improve the processing efficiency of the process.
In a first aspect, an information processing method is provided, the method comprising obtaining a data processing task including processing parameters used for data processing and data indication parameters for indicating data, and configuring an accelerator according to a configuration template of the data processing task. The configuration template comprises processing parameters of the data processing task and pointers for indicating target storage space, the target storage space is used for storing data indicating parameters, and the accelerator is used for acquiring the processing parameters and the data indicating parameters according to configuration results and executing the data processing task according to the processing parameters and the data indicating parameters.
According to the information processing method provided by the embodiment of the application, in the process of sending the data processing task to the accelerator, the accelerator can be simply and conveniently configured by storing the data indicating parameters (such as the address parameters of the data) of the data processing task in the target storage space and directly using the configuration template. The configuration template may be existing including processing parameters for the fixed data processing task and pointers to the target memory space. Therefore, the method provided by the embodiment of the application has the advantages that the operation amount of the processor in the process of sending the data processing task to the accelerator is smaller, the processing data amount is smaller, and the processing efficiency is higher. And, the processing parameters of multiple data processing tasks of the same type may be the same. Based on this, in the information processing method provided by the embodiment of the present application, multiple data processing tasks of the same type can also configure the accelerator using the same configuration template. Thus, the processor operation amount in the process of sending a plurality of data processing tasks to the accelerator is further reduced, and the processing efficiency is improved.
In some possible implementations, the method includes obtaining a configuration template for the data processing task from at least one configuration template for the at least one data processing task.
The task parameters of different types of data processing tasks differ significantly. In this way, by setting at least one corresponding configuration template for at least one data processing task, the accelerator can be simply, conveniently and accurately configured by acquiring the corresponding configuration template for one or more types of data processing tasks.
In other possible implementations, the at least one configuration template includes a first configuration template including processing parameters of the first type of processing and pointers to the first target storage space and a second configuration template including processing parameters of the second type of processing and pointers to the second target storage space.
The processing parameters, data indication parameters, of different types of data processing tasks may all be different. The processing parameters and pointers included are different for different types of configuration templates. In this manner, there may be no impact between configuring accelerators according to different types of configuration templates. The accuracy of configuring the accelerator according to the corresponding type of configuration template for various types of data processing tasks can be ensured.
In other possible implementations, the at least one configuration template includes a first configuration template including a plurality of configuration templates including a third configuration template including processing parameters of the first process and pointers indicating a third target storage space and a fourth configuration template including processing parameters of the first process and pointers indicating a fourth target storage space.
In some cases, multiple data processing tasks of the same type may be sent concurrently to the accelerator. By setting a plurality of configuration templates for one type of configuration template, when a plurality of data processing tasks of the same type are concurrently transmitted to the accelerator, the corresponding configuration template can be obtained for each data processing task to simply and conveniently configure the accelerator. And, the processing parameters of the same type of data processing task are generally the same, and the data indication parameters are different. For a plurality of configuration templates of the same type, the processing parameters included in the configuration templates are the same and the pointers are different. In this way, in the process that the plurality of data processing tasks are sent to the accelerator concurrently, the configuration of the accelerator according to the plurality of configuration templates does not have influence, and the accuracy of the accelerator when being configured according to the plurality of configuration templates concurrently can be ensured.
In other possible implementations, the data processing tasks include a first data processing task for indicating a first type of processing of the first data and a second data processing task for indicating a second type of processing of the second data. The accelerator is configured according to a configuration template of a first data processing task, wherein the configuration template of the first data processing task comprises processing parameters of a first type of processing and pointers for indicating a first target storage space, and the first target storage space is used for storing data indication parameters of first data. And configuring the accelerator according to a configuration template of the second data processing task, the configuration template of the second data processing task comprising processing parameters of the second type of processing and a pointer indicating a second target storage space for storing data indication parameters of the second data.
The processing parameters, data indication parameters, of different types of data processing tasks are generally different. According to the information processing method provided by the embodiment of the application, for a plurality of data processing tasks of different types, the data indication parameters of the data processing tasks can be respectively stored in different target storage spaces, and the accelerator can be simply and conveniently configured directly according to the configuration templates of the corresponding types. The method and the device can simply and efficiently send a plurality of data processing tasks of different types to the accelerator, and the operation amount of the processor in the process is smaller, the processing data amount is smaller, and the processing efficiency is higher.
In other possible implementations, the second data is a processing result obtained by performing the first processing on the first data.
In some scenarios, multiple data processing tasks of different types need to be distributed to multiple accelerators in order, such that the multiple accelerators execute the multiple data processing tasks in order. In this way, in the information processing method provided by the embodiment of the application, for the first data processing task and the second data processing task to be sequentially executed, the target storage space indicated by the pointer included in the configuration template of the second data processing task is used for storing the processing result of the first data processing task, and the accelerator is respectively configured by directly using the configuration template of the first processing task and the configuration template of the second processing task. The method can simply and conveniently realize that a plurality of data processing tasks are sequentially distributed to a plurality of accelerators in sequence, and the operation amount of a processor in the process is smaller, the processing data amount is smaller, and the processing efficiency is higher.
In other possible implementations, the data processing tasks include a third data processing task for performing the first processing on the third data and a fourth data processing task for performing the first processing on the fourth data. The configuration of the accelerator according to the configuration template of the data processing task comprises the step of configuring the accelerator according to the configuration template of a third data processing task, wherein the configuration template of the third data processing task comprises processing parameters of the first type of processing and pointers for indicating a third target storage space, and the third target storage space is used for storing data indication parameters of third data. And configuring the accelerator according to a configuration template of a fourth data processing task, the configuration template of the fourth data processing task comprising processing parameters of the first type of processing and a pointer indicating a fourth target storage space, the fourth target storage space being for storing data indication parameters of fourth data.
The processing parameters of the multiple data processing tasks of the same type may be the same, the data indication parameters being different. In the information processing method provided by the embodiment of the application, for a plurality of data processing tasks of the same type, the data indicating parameters of the data processing tasks are respectively stored in different target storage spaces, and the accelerator is simply and conveniently configured directly according to the configuration templates of the corresponding types. The method can simply and efficiently send a plurality of data processing tasks of the same type to the accelerator simultaneously, and the operation amount of the processor in the process is smaller, the processing data amount is smaller, and the processing efficiency is higher.
In other possible implementations, the data indication parameter includes an address parameter for indicating a save address of the data. The address parameters of the data processing task include an input data address parameter and an output data address parameter. The input data address parameter is used for indicating the storage address of the data, and the output data address parameter is used for indicating the storage address of the processing result of the data.
The data processing task may indicate a save address of input data, a save address of output data of the data processing task. Thus, in the information processing method provided by the embodiment of the application, the input data address parameter and the output data address parameter of the data processing task can be stored in the target storage space. The method ensures that task parameters of the data processing task can be accurately written into the accelerator when the accelerator is configured according to the configuration template of the data processing task.
In other possible implementations, the information processing system includes a general purpose processor and the accelerator, and configures the accelerator according to a configuration template of the data processing task, including the general purpose processor sending indication information of the configuration template of the data processing task to the accelerator, the accelerator obtaining the configuration template of the data processing task according to the indication information, and configuring the accelerator according to the configuration template of the data processing task.
In the information processing method provided by the embodiment of the application, the general processor can only send the indication information of the configuration template to the accelerator, and the accelerator can automatically acquire the configuration template to configure the accelerator according to the indication information. The method can better ensure that the operation quantity and the communication data quantity of the general processor are less in the process of sending the data processing task to the accelerator.
In other possible implementations, configuring the accelerator according to the configuration template of the data processing task includes configuring a memory space of the accelerator according to the configuration template of the data processing task such that processing parameters included in the configuration template and pointers indicating the target memory space are saved in the memory space of the accelerator.
Writing instruction related information to a memory space of an accelerator (e.g., a register of the accelerator) may enable issuing instructions to the register. Based on this, in the information processing method provided by the embodiment of the present application, the accelerator can be simply and conveniently configured by saving the processing parameters and the pointers included in the configuration template in the memory space of the accelerator, so that the accelerator can execute the data processing task.
In a second aspect, an information processing apparatus is provided, the apparatus including a task acquisition module and a configuration module. The task acquisition module is used for acquiring a data processing task, wherein the data processing task comprises processing parameters used for data processing and data indication parameters used for indicating data. The configuration module is used for configuring the accelerator according to a configuration template of the data processing task, the configuration template comprises processing parameters and pointers for indicating target storage space, the target storage space is used for storing data indicating parameters, the accelerator is used for acquiring the processing parameters and the data indicating parameters according to configuration results, and the accelerator is used for executing the data processing task according to the processing parameters and the data indicating parameters.
In some possible implementations, the configuration module is further configured to obtain a configuration template of the data processing task from at least one configuration template of the at least one data processing task.
In other possible implementations, the at least one configuration template includes a first configuration template including processing parameters of the first type of processing and pointers to the first target storage space and a second configuration template including processing parameters of the second type of processing and pointers to the second target storage space.
In other possible implementations, the at least one configuration template includes a first configuration template including a plurality of configuration templates including a third configuration template including processing parameters of the first process and pointers indicating a third target storage space and a fourth configuration template including processing parameters of the first process and pointers indicating a fourth target storage space.
In other possible implementations, the data processing tasks include a first data processing task for indicating a first type of processing of the first data and a second data processing task for indicating a second type of processing of the second data. The configuration module is further configured to configure the accelerator according to a configuration template of a first data processing task, the configuration template of the first data processing task including a processing parameter of a first type of processing and a pointer indicating a first target storage space, the first target storage space being configured to store data indication parameters of the first data. The configuration module is further used for configuring the accelerator according to a configuration template of a second data processing task, wherein the configuration template of the second data processing task comprises processing parameters of a second type of processing and pointers for indicating a second target storage space, and the second target storage space is used for storing data indication parameters of second data. In some possible implementations, the second data is a processing result obtained by performing the first processing on the first data.
In other possible implementations, the data processing tasks include a third data processing task for performing the first processing on the third data and a fourth data processing task for performing the first processing on the fourth data. The configuration module is further configured to configure the accelerator according to a configuration template of a third data processing task, the configuration template of the third data processing task including processing parameters of the first process and a pointer indicating a third target storage space, the third target storage space being configured to store data indication parameters of third data. The configuration module is further used for configuring the accelerator according to a configuration template of a fourth data processing task, wherein the configuration template of the fourth data processing task comprises processing parameters of the first processing and pointers for indicating a fourth target storage space, and the fourth target storage space is used for storing data indication parameters of fourth data.
In other possible implementations, the data indication parameter includes an address parameter for indicating a save address of the data, and the address parameter of the data processing task includes an input data address parameter and an output data address parameter. The input data address parameter is used for indicating the storage address of the data, and the output data address parameter is used for indicating the storage address of the processing result of the data.
In other possible implementations, the configuration module further includes a first configuration module and a second configuration module, where the first configuration module may be disposed on the general purpose processor and the second configuration module may be disposed on the accelerator. The first configuration module is used for sending indication information of a configuration template of the data processing task to the accelerator. The second configuration module is used for acquiring a configuration template of the data processing task according to the indication information and configuring the accelerator according to the configuration template of the data processing task.
In other possible implementations, the configuration module is further configured to configure the storage space of the accelerator according to a configuration template of the data processing task, such that the processing parameters included in the configuration template and the pointer indicating the target storage space are stored in the storage space of the accelerator.
In a third aspect, there is provided an information processing system comprising a general purpose processor and an accelerator for cooperatively executing the information processing method according to the first aspect.
In a fourth aspect, a chip system is provided, comprising a processor and a power supply circuit for powering the processor, the processor being configured to perform the information processing method according to the first aspect.
In a fifth aspect, there is provided a computing device comprising a processor and a memory, the processor being operable to execute instructions stored in the memory to cause the computing device to perform the information processing method according to the first aspect.
In a sixth aspect, there is provided a computer program product comprising instructions which, when executed by at least one computing device, cause the at least one computing device to perform the information processing method according to the first aspect.
In a seventh aspect, there is provided a computer readable storage medium comprising computer program instructions which, when executed by a computing device, perform the information processing method according to the first aspect.
Further combinations of the present application may be made to provide further implementations based on the implementations provided in the above aspects.
In the following description, more specific details are included regarding implementations provided in the above aspects.
Drawings
FIG. 1 is a schematic diagram of an information processing system according to an embodiment of the present application;
Fig. 2 is a schematic flow chart of an information processing method according to an embodiment of the present application;
FIG. 3 is a second flowchart of an information processing method according to an embodiment of the present application;
fig. 4 is a flowchart illustrating a method for processing information according to an embodiment of the present application;
Fig. 5 is a schematic structural diagram of an information processing apparatus according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a computing device according to an embodiment of the present application.
Detailed Description
A general purpose processor is one of processors and may refer to a general purpose processor that can be adapted for a variety of applications and that can perform a variety of types of calculations. By way of example, a general-purpose processor may include a central processing unit (Central Processing Unit, CPU), a microprocessor unit (Micro Processor Unit, MPU), a Field-Programmable gate array (Field-Programmable GATE ARRAY, FPGA), or the like.
An accelerator is also a type of processor and may refer to a processor that is dedicated to, or has relatively high processing power in terms of, some type of computation. As examples, accelerators may include graphics processors (Graphic Process Unit, GPUs), neural processing units (neural processing unit, NPUs), tensor processors (tensor processing unit, TPUs), and the like. Different types of accelerators may be dedicated to or have greater processing power in terms of different types of computing.
As such, accelerators may be more powerful than general purpose processors in terms of some types of computation, and some types of accelerators may also have less power consumption, and less area, than general purpose processors.
The general processor can cooperate with the accelerator, and the general processor sends the generated or received data processing task to the accelerator for processing, so that the effects of improving the processing efficiency of the data processing task, reducing the power consumption of the task processing process, improving the quality of the data processing result and the like can be realized.
In the process that the general processor sends the data processing task to the accelerator, the task parameters of the data processing task need to be configured to the accelerator so that the accelerator can execute the data processing task according to the task parameters.
At present, in the process that the general-purpose processor sends data processing tasks to the accelerator, configuration operation is independently carried out on each data processing task so as to configure each task parameter of each data processing task to the accelerator, so that the general-purpose processor has more processor operation and more processing data volume in the process of sending the data processing tasks to the accelerator, and the processing efficiency of the process is not high.
For example, in some implementations, during the process of sending data processing tasks to the accelerator, for each data processing task, the general purpose processor writes the respective task parameters of the data processing task to the registers of the accelerator in a one-to-one configuration. Thus, when the number of task parameters is large (for example, the task parameters of one data processing task include hundreds or thousands), the general-purpose processor needs to perform a large number of register write operations every time the data processing task is sent to the accelerator, and the processing efficiency is low.
For another example, in other implementations, the general purpose processor generates and stores a task parameter configuration list for each data processing task separately in the process of sending the data processing task to the accelerator. The task parameter configuration list includes task parameters to be configured to the accelerator. And the general processor configures the memory address of the task parameter configuration list to the accelerator, and the accelerator reads the task parameter configuration list from the memory by itself to perform accelerator configuration. Therefore, for each data processing task sent to the accelerator, the general processor needs to independently generate a task parameter configuration list and perform the operation of writing the task parameter configuration list in the memory, the memory operation times and the parameters written by the memory operation of the processor are still more, and the processing efficiency is not high.
The embodiment of the application provides an information processing method, which comprises the steps of acquiring a data processing task, wherein the data processing task comprises a data indication parameter for indicating data and a processing parameter used for processing the data, and configuring an accelerator according to a configuration template of the data processing task. The configuration template comprises processing parameters of the data processing task and a pointer for indicating a target storage space, the target storage space is used for storing data indicating parameters of the data processing task, and the accelerator is used for acquiring the processing parameters and the data indicating parameters according to a configuration result and executing the data processing task according to the processing parameters and the data indicating parameters.
According to the information processing method provided by the embodiment of the application, in the process of sending the data processing task to the accelerator, the accelerator can be simply and conveniently configured by storing the data indicating parameters (such as the address parameters of the data) of the data processing task in the target storage space and directly using the configuration template. The configuration templates may be pre-set and saved, including processing parameters for the fixed data processing tasks and pointers to the target memory space. Compared with a method for independently performing configuration operation on data processing tasks, the method provided by the embodiment of the application has the advantages of smaller operation amount, smaller data processing amount and higher processing efficiency. In the information processing method provided by the embodiment of the application, the accelerator can be configured by using the same configuration template for a plurality of data processing tasks (for example, a plurality of data processing tasks with the same processing parameters), so that the operation amount of the process of sending the plurality of data processing tasks to the accelerator is further reduced, and the processing efficiency is improved.
The information processing method provided by the embodiment of the application can be suitable for various scenes in which the data processing task of the general processor is required to be sent to the accelerator for processing. For example, in the process of running an application by a general-purpose processor, a data processing task is generated, and the general-purpose processor needs to send the data processing task to an accelerator for processing, where the accelerator may be configured by using the information processing method provided by the embodiment of the present application.
In the information processing method provided by the embodiment of the application, the data can be various types of data such as images, texts, audio and the like, and the data processing task can be various types of data processing tasks such as image processing tasks, data encoding tasks and the like.
The system architecture provided by the embodiment of the application is described below.
Fig. 1 is a schematic diagram of an information processing system according to an embodiment of the present application. The information processing system 100 may be used to implement the information processing method proposed by the embodiment of the present application. As shown in fig. 1, the information processing system 100 includes a general-purpose processor 110, an accelerator 120, and a storage medium 130.
The general purpose processor 110 may be used to run various applications and perform various tasks. The general purpose processor 110 may also be used to communicate with other devices, such as with other servers, terminals, etc.
The general purpose processor 110 may obtain data processing tasks, e.g., the general purpose processor 110 may generate data processing tasks or receive data processing tasks sent by other devices. As an example, the general-purpose processor 110 runs an image processing class application, generating image processing tasks. As yet another example, the general purpose processor 110 receives image processing tasks sent by clients.
The general purpose processor 110 may include one or more general purpose processors, such as may be a combination of one or more of CPU, MPU, FPGA, etc.
The accelerator 120 may be a combination of one or more of various types of accelerators such as GPU, NPU, TPU.
The accelerator 120 may be used to communicate with the general purpose processor 110 and data processing tasks acquired by the general purpose processor 110 may be handed off to the accelerator 120 for execution.
In some embodiments, the general purpose processor 110 may cooperate with the accelerator 120 to perform the information processing method provided in the embodiments of the present application, so as to send the data processing task of the general purpose processor 110 to the accelerator 120 for processing.
For example, after the general purpose processor 110 acquires the data processing task, the general purpose processor 110 may cooperate with the accelerator 120 to configure the accelerator 120 according to a configuration template of the data processing task, where the configuration template includes processing parameters of the data processing task and pointers to a target storage space for storing data indication parameters of the data processing task.
Wherein the target storage space may refer to an allocated storage space for storing data indicative parameters of the data processing task, such as a second storage space in storage medium 130 in fig. 1.
Wherein writing the data indicative parameters of the data processing tasks to the target memory space may be performed by the general purpose processor 110 or the accelerator 120. For example, after the general-purpose processor 110 acquires the data processing task, the data indicating parameter of the data processing task is written into the target storage space. Or after the general-purpose processor 110 acquires the data processing task, the data indicating parameter of the data processing task is sent to the accelerator 120, and the accelerator 120 writes the data indicating parameter of the data processing task into the target storage space.
In some embodiments, a preset configuration template may be stored in the storage medium 130 (e.g., a configuration template may be stored in the first storage space in the storage medium 130 in fig. 1) so that when the general purpose processor 110 and the accelerator 120 cooperate to configure the accelerator 120 according to the configuration template of the data processing task, the configuration template of the data processing task is obtained from the storage medium 130.
The storage medium 130 may include various types or a combination of types of storage media such as an optical disk, a magnetic disk (which may include a floppy disk, a hard disk, etc.), a solid state disk, etc.
By way of example, the general purpose processor 110 and the accelerator 120 may cooperatively configure the accelerator 120 according to a configuration template of a data processing task by the general purpose processor 110 transmitting indication information of the configuration template of the data processing task to the accelerator 120, the accelerator 120 acquiring the configuration template of the data processing task from the storage medium 130 according to the received indication information, and the accelerator 120 configuring the accelerator 120 according to the acquired configuration template. For example, the accelerator 120 writes the processing parameters and data indication parameters of the data processing task to a parameter storage space (e.g., a storage space such as a register) of the accelerator 120 according to the configuration template.
For more details on the information processing method provided by the embodiment of the present application, the general processor 110 and the accelerator 120 cooperatively execute the method of the present application, reference may be made to fig. 2, 3, 4 and their related descriptions in the embodiment of the present application.
The accelerator 120 may be further configured to obtain processing parameters and data indication parameters of the data processing task according to the configuration result, and execute the data processing task according to the processing parameters and the data indication parameters of the data processing task.
The accelerator 120 may also feed back the processing results of the data processing tasks to the general purpose processor 110 so that the general purpose processor 110 knows the processing results.
In some embodiments, the accelerator 120 may include a plurality of accelerators 120-1, 120-2. One data processing task of the general-purpose processor 110 may be sent to one or some accelerators of the accelerators 120 to process according to requirements, and the configuration of the accelerators in the process of sending the data processing task to the accelerators may be implemented by the information processing method provided by the embodiment of the present application.
In some embodiments, the plurality of accelerators 120-1, 120-2..may include one or more types of accelerators, different types of accelerators being available to process different types of data processing tasks. For example, an image processing accelerator is used to process image processing tasks such as image rendering, and an image encoding accelerator is used to process image encoding tasks, and the like.
Wherein each of the plurality of accelerators 120-1, 120-2. The accelerators may be different processors (e.g., different GPUs), or the plurality of accelerators may be disposed on one processor (e.g., one GPU includes a plurality of processing components, each of the plurality of processing components acting as an accelerator).
In some embodiments, the general purpose processor 110 and the accelerator 120 may be disposed on the same computing device, e.g., on the same server, terminal, etc. In this manner, the computing device may execute the information processing method provided by the embodiment of the present application, so as to send the data processing task of the general purpose processor 110 in the computing device to the accelerator 120 in the computing device for processing.
In some embodiments, accelerator 110 and accelerator 120 may be disposed on different computing devices, such as general purpose processor 110 disposed on a first computing device (not shown in fig. 1) and accelerator 120 disposed on a second computing device (not shown in fig. 1). In this manner, the first computing device and the second computing device may cooperatively execute the information processing method provided by the embodiment of the present application, so as to implement the process of sending the data processing task of the general purpose processor 110 in the first computing device to the accelerator 120 in the second computing device.
Fig. 1 is only a schematic diagram of an architecture of an information processing system according to an embodiment of the present application, and a positional relationship among devices, apparatuses, modules, and the like shown in the drawing is not limited in any way.
For example, in fig. 1, the first storage space and the second storage space are both provided in the same storage medium 130, and in other cases, the first storage space and the second storage space may be provided in different storage media. For example, a first storage space is provided in a first storage medium, and a second storage space is provided in a second storage medium. The first storage medium may be an external storage medium of the accelerator 120 or an internal storage medium of the accelerator 120.
For another example, in fig. 1, the storage medium 130 is a component other than the accelerator 120, and in other cases, the first storage medium 130 may be a storage medium inside the accelerator 120.
The information processing method provided by the embodiment of the application is described in detail below. The information processing method provided by the embodiment of the present application may be implemented on the information processing system 100 shown in fig. 1.
Fig. 2 is a flowchart illustrating an information processing method according to an embodiment of the present application. The information processing method shown in fig. 2 may be performed by a computing device or a processing device.
For example, a computing device including a general purpose processor 110 and an accelerator 120 in the information processing system 100 may perform the information processing method shown in fig. 2 to configure the accelerator 120 included in the computing device.
For another example, the information processing method shown in fig. 2 may be cooperatively executed by the general-purpose processor 110 and the accelerator 120 in the information processing system 100.
For ease of understanding, the information processing method performed cooperatively by the general purpose processor and the accelerator is described in fig. 2. In the method, the operations executed by the general-purpose processor may individually constitute an information processing method executed by the general-purpose processor, and the operations executed by the accelerator may individually constitute an information processing method executed by the accelerator.
As shown in fig. 2, the method includes the following steps.
Step 210, acquiring a data processing task.
In step 210, data processing tasks may be acquired by a general purpose processor. For example, the general purpose processor runs an application to generate data processing tasks, or other devices send data processing tasks to the general purpose processor so that the general purpose processor obtains the data processing tasks.
The data processing task is used for indicating that the specified processing/operation is performed on the data to obtain a processing result. The data may be various types of data such as images, text, audio, and the like. And, the data processing task may be various types of data processing tasks, such as an image cropping task, an image encoding task, and the like.
The data processing task may include task parameters related to or used for executing the task, and the task parameters may include processing parameters and data indication parameters of the data processing task.
Wherein the data indication parameter refers to a parameter for indicating data-related information. Parameters indicating various information about the data processed by the data processing task may be included. As an example, the data indication parameter includes an address parameter, a time parameter, a data amount size parameter, and the like of the data.
The address parameter may refer to a parameter for indicating a save address of data. In some embodiments, the address parameters of the data may include an input data address parameter and an output data address parameter.
The input data address parameter is used to indicate the save address of the input data (i.e., processed data) of the data processing task.
The output data address parameter is used to indicate a save address of output data of the data processing task (i.e., a processing result obtained by processing data).
The time parameter of the data may refer to a parameter indicating a time corresponding to the data. For example, the data to be processed by the data processing task is data from a first time to a second time in 2 months and 1 days, and the time parameter of the data is from the first time to the second time in 2 months and 1 days.
The data size parameter of the data may refer to a parameter indicating the size of the data corresponding to the data. For example, the data to be processed by the data processing task is a data block in a certain data set, the data size of the data block is 200KB, and the data size parameter of the data is 200KB.
The processing parameters may refer to processing parameters used to process data and may include various parameters related to the processing performed by the data processing task. For example, taking a data processing task as an image cropping task as an example, the processing parameters of the data may include a pre-image cropping resolution, a post-image cropping resolution, an image cropping size parameter, an image cropping region shape parameter, and the like.
The number of parameters of the task parameters of the data processing task may be large, for example, the processing parameters comprise hundreds or thousands. In contrast, the number of data indicating parameters of the data processing task is small.
In step 210, the general purpose processor may acquire one or more data processing tasks and may send the one or more data processing tasks to the accelerator process.
The general processor can acquire a plurality of data processing tasks at the same time, or can acquire a plurality of data processing tasks sequentially according to time sequence.
The plurality of data processing tasks acquired by the general purpose processor may include one or more types of data processing tasks.
A plurality of data processing tasks belonging to the same type are all used for performing the same type of data processing. For example, the tasks A1 and A2 are of the same type, the task A1 being for performing the columnar projection processing on the image 1, and the task A2 being for performing the columnar projection processing on the image 2.
Belonging to a plurality of data processing tasks of different types, which are respectively used for carrying out data processing of different types. For example, the tasks A1 and B1 belong to different types, the task A1 is for performing a histogram projection process on the image 1, and the task B1 is for performing a histogram detection process on the image.
Step 220, the accelerator is configured according to the configuration template of the data processing task.
In the process that the general processor sends the data processing task to the accelerator, task parameters of the data processing task need to be configured to the accelerator. Configuring an accelerator may refer to storing task parameters of a data processing task inside the accelerator, among other things.
Thus, after the accelerator is configured, the accelerator can acquire task parameters of the data processing task according to the configuration result, and execute the data processing task according to the task parameters.
The implementation of configuring the accelerator to store the task parameters of the data processing task inside the accelerator may include a variety of possible ways, such as writing the task parameters of the data processing task to an instruction and storing the instruction in a memory space (e.g., a register, etc.) of the accelerator, or directly writing the task parameters of the data processing task to a memory space (e.g., a register, etc.) of the accelerator.
Taking the example of writing task parameters of a data processing task to registers in the accelerator, each of the task parameters may be written to a register in the accelerator. As such, for each data processing task sent to the accelerator, the task parameters may be written in multiple registers (e.g., hundreds or thousands) of the accelerator when the accelerator is configured.
Different data processing tasks are used to process different data, and the data indication parameters (e.g., address parameters, etc.) in the task parameters of each data processing task may be different. For a plurality of data processing tasks belonging to the same type, which are all used for performing data processing of the same type, the processing parameters in the task parameters of each data processing task may be the same.
In this way, for a plurality of data processing tasks belonging to the same type, the data instruction parameters in the task parameters are different, but the processing parameters in the task parameters are the same.
Based on this, in the embodiment of the present application, a configuration template of the data processing task may be generated, and the configuration template may include processing parameters in task parameters included in the data processing task, and a target pointer. The target pointer is used for indicating a target storage space, and the target storage space is used for storing data indication parameters in task parameters contained in the data processing task.
In the process that the general-purpose processor sends the data processing task to the accelerator, the accelerator can be configured according to the configuration template, so that the processing parameters and the target pointers in the configuration template are stored in the accelerator. And, data indicating parameters of the data processing task may be written to the target storage space.
After the accelerator is configured, the accelerator may obtain task parameters (including processing parameters and address parameters) of the data processing task according to the configuration result, and execute the data processing task according to the task parameters.
The accelerator obtains the processing parameters and the target pointers of the data processing task according to the configuration result, and then obtains the data indication parameters of the data processing task according to the target pointers in the target storage space, so as to obtain the processing parameters and the data indication parameters of the data processing task.
As an example, the accelerator is configured to write task parameters of the data processing task to registers of the accelerator. In this case, the configuration template may include therein a processing parameter in the data processing task and an accelerator register stored corresponding to each processing parameter, and an accelerator register (the accelerator includes a plurality of registers) stored corresponding to the target pointer and the target pointer. When the accelerator is configured according to the configuration template, the processing parameters and the target pointer in the configuration template can be written into the corresponding accelerator register according to the configuration template. And, the accelerator may read the processing parameters and the target pointer in the register to obtain task parameters, such as the processing parameters and the data indication parameters, and perform the data processing task according to the task parameters, such as the processing parameters and the address parameters.
In the embodiment of the application, for a plurality of data processing tasks of the same type, the accelerator can be configured according to the same configuration template in the process of sending the data processing tasks to the accelerator.
As an example, a corresponding configuration template T1 may be generated for the columnar projection process, where the configuration template includes a processing parameter p1 of the columnar projection process and a target pointer n1, where the target pointer n1 is used to indicate a memory block M1 (i.e. a target storage space) in the memory.
The general purpose processor sends a task A1 to the accelerator for processing, where the task A1 is used to perform columnar projection processing on the image 1, and the task A1 includes an address parameter d1 of the image 1 and a processing parameter p1 of the columnar projection processing.
At this time, the data indicating parameter d1 of the task A1 may be stored in the memory block M1, and the accelerator may be configured according to the configuration template T1, so that the processing parameter p1 and the target pointer n1 in the configuration template T1 are stored inside the accelerator. In this way, the accelerator can acquire the processing parameter p1 of the task A1, the target pointer n1, and the data indication parameter d1 of the image 1 in the memory block M1 indicated by the target pointer n1 according to the configuration result, and execute the task A1 according to the acquired task parameters (including the processing parameter p1 and the data indication parameter d 1).
Then, the general purpose processor sends the task A2 to the accelerator process, where the task A2 is used to perform the columnar projection process on the image 2, and the task A2 includes the data indication parameter d2 of the image 2 and the processing parameter p1 of the columnar projection process.
At this time, the address parameter d2 of the task A2 may be saved in the memory block M1, and the accelerator is still configured according to the configuration template T1, so that the processing parameter p1, the target pointer n1 in the configuration template T1 are stored inside the accelerator. In this way, the accelerator can acquire the processing parameter p1 of the task A1, the target pointer n1, and the data indication parameter d2 of the image 2 in the memory block M1 indicated by the target pointer n1 according to the configuration result, and execute the task A2 according to the acquired task parameters (including the processing parameter p1 and the data indication parameter d 2).
In some embodiments, the configuration templates may be stored in a storage medium after they are generated, so as to facilitate retrieval of the desired configuration templates from the storage medium when needed.
Wherein the configuration templates may be generated by any available processing device. Such as may be generated by a general purpose processor or accelerator or other device.
The configuration templates may be stored in any available storage medium. For example, a computing device may include a general purpose processor, an accelerator, memory, etc., and a configuration template may be stored in the memory of the computing device, from which the general purpose processor or accelerator may retrieve the desired configuration template. Alternatively, the configuration templates may be stored in a memory internal to the accelerator, from which the general purpose processor or the accelerator may retrieve the desired configuration templates.
In some embodiments, a corresponding plurality of configuration templates may be generated for a plurality of different types of data processing tasks. Wherein, the processing parameters and the target pointers contained in the configuration templates of different types can be different.
In step 220, for each data processing task, a configuration template corresponding to the task type of the data processing task may be obtained from a plurality of configuration templates as the configuration template of the data processing task.
As an example, the plurality of configuration templates may include a first configuration template, a second configuration template, and so on. The first configuration template is the configuration template of the first data processing task, and the second configuration template is the configuration template of the second data processing task. The first and the second are only used for distinguishing different types of configuration templates and different types of data processing tasks, and do not limit the configuration templates and the data processing tasks.
The first data processing task is configured to instruct a first process to be performed on the first data, and the first configuration template includes a processing parameter of the first process and a first target pointer, where the first target pointer indicates a first target storage space. The first target storage space is for storing data indication parameters of the first data processing task (including data indication parameters of the first data, e.g. address parameters of the first data, etc.).
The second data processing task is configured to instruct a second process to be performed on the second data, and the second configuration template includes a processing parameter of the second process and a second target pointer, where the second target pointer indicates a second target storage space. The second target storage space is used for storing data indication parameters of the second data processing task (including data indication parameters of the second data, such as address parameters of the second data, etc.).
The first and second storage spaces are only used for distinguishing different data and different target storage spaces, and no limitation is formed on the data and the target storage spaces.
Thus, when the general-purpose processor acquires a plurality of data processing tasks, and the plurality of data processing tasks includes a first type of data processing task and a second type of data processing task that are different in type:
for the first data processing task, the first data processing task is used for indicating that the first data is processed for the first type, and the corresponding configuration template is the first configuration template. The first configuration template includes process parameters for the first process, a first target pointer (indicating a first target memory space).
In step 220, data indicative parameters of a first data processing task may be saved in a first target storage space, and the accelerator may be configured according to a first configuration template. The accelerator may obtain processing parameters and data indication parameters of the first data processing task based on the configuration result, and execute the first data processing task based on the obtained processing parameters and data indication parameters.
For the second data processing task, the second data processing task is used for indicating that the second data is processed for the second type, and the corresponding configuration template is the second type configuration template. The second configuration template includes process parameters for the second process, a second target pointer (indicating a second target memory space).
In step 220, data indicative parameters of a second data processing task may be saved in a second target storage space, and the accelerator may be configured according to a second configuration template. The accelerator may acquire processing parameters and data indication parameters of the second data processing task according to the configuration result, and execute the second data processing task according to the acquired processing parameters and data indication parameters.
In some embodiments, for a type of data processing task, a configuration template that it generates may also include a plurality of configuration templates. The processing parameters contained in the configuration templates are the same, and the target pointers contained in the configuration templates can be different.
Based on this, when the general purpose processor acquires a plurality of data processing tasks belonging to one type, and the plurality of data processing tasks need to be transmitted to the accelerator in parallel (for example, to one accelerator or to a plurality of accelerators, respectively) in step 220, a corresponding configuration template may be acquired for any one of the data processing tasks to configure the accelerator.
As an example, the first configuration template may be any type of configuration template, including a plurality of configuration templates, including, for example, a third configuration template, a fourth configuration template, and so forth. The plurality of configuration templates comprise the same processing parameters, and the data indication parameters are different.
For example, the first type of configuration template is a configuration template of a first type of data processing task that is used to indicate a first type of processing of data.
The third configuration template includes processing parameters of the first processing and a third target pointer indicating a third target storage space.
The fourth configuration template includes processing parameters of the first type of processing and a fourth target pointer indicating a fourth target storage space.
The first is only convenient for expression, and does not limit configuration templates and data processing tasks. And the third and fourth are only used for distinguishing different kinds of configuration templates and different target storage spaces, and do not limit the configuration templates and the target storage spaces.
As such, when the general-purpose processor acquires a plurality of data processing tasks, and the plurality of data processing tasks includes a third data processing task and a fourth data processing task of the same type:
for the third data processing task, the configuration template used for indicating the first processing of the third data, where the obtained configuration template of the third data processing task may be a third configuration template in the first configuration template.
In step 220, data indicative parameters of a third data processing task may be saved in a third target storage space, and the accelerator may be configured according to a third configuration template. The accelerator may acquire the processing parameters and the data indication parameters of the third data processing task according to the configuration result, and execute the third data processing task according to the acquired processing parameters and the data indication parameters.
For the fourth data processing task, the fourth data processing task is used for indicating that the first processing is performed on the fourth data, and the corresponding configuration template can be a fourth configuration template in the first configuration templates.
In step 220, data indicative parameters of a fourth data processing task may be saved in a fourth target storage space, and the accelerator may be configured according to a fourth configuration template. The accelerator may acquire processing parameters and data indication parameters of the fourth data processing task according to the configuration result, and execute the fourth data processing task according to the acquired processing parameters and data indication parameters.
In step 220, the configuration of the accelerator according to the configuration template of the data processing task may be performed by the general purpose processor in conjunction with the accelerator. The manner in which the general purpose processor and accelerator cooperate includes a variety of ways.
In some implementations, the general purpose processor may obtain a configuration template of the data processing task to send to the accelerator. The accelerator configures the accelerator according to the received configuration template, such as configuring a memory space of the accelerator.
In other implementations, the general purpose processor may determine a configuration template for the data processing task from among the existing at least one configuration template, and the general purpose processor sends an indication of the configuration template for the data processing task to the accelerator. The accelerator acquires a configuration template of the data processing task according to the received indication information, and configures the accelerator according to the acquired configuration template.
According to the embodiment, in the process of sending the data processing task to the accelerator, the general processor only needs to send the indication information of the configuration template of the data processing task to the accelerator, and the accelerator can automatically acquire the configuration template according to the indication information to configure the accelerator. The operation amount of the general processor in the process and the communication data amount with the accelerator are smaller, and the processing efficiency is higher.
The indication information of the configuration template can be used for indicating a mode of acquiring the configuration template. For example, at least one configuration template is stored in the storage medium, each configuration template having a corresponding identification, the indication information including an identification of the desired configuration template, and the accelerator being operable to obtain the desired configuration template from the plurality of configuration templates based on the identification. For another example, at least one configuration template is stored in the storage medium, each configuration template having a corresponding storage address, the indication information including the storage address of the desired configuration template, the accelerator having access to the storage address to retrieve the desired configuration template.
And, in step 220, address parameters of the data processing task may be written to the target storage medium for storage by the general purpose processor or the accelerator according to the scenario or the requirement.
For ease of understanding, the following description will be given by way of example of an information processing method in which a general-purpose processor and an accelerator are cooperatively executed in different scenarios and operations in which the general-purpose processor and the accelerator are respectively executed in the method, with reference to fig. 3 and 4.
Fig. 3 is a flow chart of a second embodiment of an information processing method according to the present application. The information processing method shown in fig. 3 may be cooperatively executed by the general-purpose processor 110 and the accelerator 120 in the information processing system 100.
The information processing method in fig. 3 is applicable to a scenario in which a general-purpose processor directly transmits a data processing task to an accelerator for processing. For any data processing task, the method in fig. 3 can realize that the general purpose processor and the accelerator cooperatively execute the configuration template for configuring the accelerator according to the data processing task.
As shown in fig. 3, the method may include:
step 310, the general purpose processor obtains a data processing task.
Step 320, the general purpose processor writes the data indication parameter of the data processing task into the target storage space, where the target storage space is indicated by the target pointer in the configuration template of the data processing task.
Step 330, the general purpose processor sends the accelerator an indication of the configuration template of the data processing task.
Step 340, the accelerator obtains the configuration template of the data processing task according to the indication information of the configuration template of the data processing task.
The configuration template of the data processing task includes processing parameters and target pointers of the data processing task.
Step 350, the accelerator configures the accelerator according to the configuration template of the data processing task.
In this way, the accelerator can read the processing parameters and the target pointers of the data processing task according to the configuration result and can also read the data indication parameters of the data processing task according to the target pointers to at least the target storage space of the target pointers when the accelerator executes the data processing task, and then the accelerator can execute the data processing task according to the processing parameters and the data indication parameters of the data processing task.
The details of each of the operations in steps 310-350 are similar to those of the method of fig. 2, and reference is made to fig. 2 and the associated description.
In some scenarios, data processing tasks acquired by a general purpose processor (referred to as target data processing tasks for ease of description) are used to indicate various data processing on target data. And a plurality of accelerators are needed to process a plurality of data processing tasks respectively to realize the completion of the target data processing tasks.
Wherein the plurality of accelerators may process the plurality of data processing tasks in order. For example, the plurality of data processing tasks includes a first data processing task and a second data processing task. The first accelerator processes a first data processing task that directs a first type of processing of target data. The second accelerator processes a second processing data task that indicates that a second processing is performed on a processing result of the first data processing task (i.e., a processing result obtained by performing the first processing on the target data).
The first and second are only used for distinguishing different processing tasks and accelerators, and no limitation is formed on the processing tasks and accelerators.
As an example, the general-purpose processor acquires a target image processing task-image processing task C1 that instructs to perform a noise removal process (referred to as a noise removal task) on an image captured by a camera (i.e., target data), a target recognition process (referred to as a target recognition task) on the noise-removed image, and an image encoding process (referred to as an image encoding task) on the target-recognized image.
The image processing task C1 is completed by processing the noise removal task by the accelerator 1, then processing the object recognition task by the accelerator 2, and then processing the image encoding task by the accelerator 3.
The data processing task to be processed by each accelerator can be configured by the information processing method provided by the embodiment of the application in the process of sending the data processing task to the accelerator.
Fig. 4 is a flowchart illustrating a method for processing information according to an embodiment of the present application. The information processing method shown in fig. 4 may be cooperatively executed by the general-purpose processor 110 and the accelerator 120 in the information processing system 100. Wherein the accelerator 120 may comprise a plurality of accelerators.
The information processing method in fig. 4 is applicable to the aforementioned scenario in which multiple accelerators are required to process multiple data processing tasks respectively to complete the target data processing task. The information processing method of fig. 4 can be used in such a scenario, where multiple accelerators are configured in the process of scheduling the multiple accelerators for multiple data processing.
In some embodiments, configuring multiple accelerators may be implemented in the method shown in FIG. 4 by a dedicated device or component, which may be referred to as a scheduler. The scheduler may be implemented in software or hardware, and a scheduler formed of hardware may be referred to as a hardened scheduler.
For example, the scheduler may be implemented by a hardware portion of a general purpose processor or accelerator or other processing device, or by software running on the general purpose processor or accelerator or other processing device.
In fig. 4, a plurality of accelerators (for example, accelerator 1, accelerator 2, accelerator 3, etc.) are mainly configured as a scheduler, and the scheduler is exemplified by a hardware part implementation in the accelerator (for example, any one of accelerator 1, accelerator 2, accelerator 3).
As shown in fig. 4, the method may include:
Step 410, the general purpose processor obtains a target data processing task.
The target data processing task is used to instruct to perform various data processing on target data, for example, the target image processing task-the image processing task C1 instructs to perform noise removal processing (referred to as a noise removal task) on an image, target recognition processing (referred to as a target recognition task) on a noise removed image, and image encoding processing (referred to as an image encoding task) on a target recognized image.
Step 420, the general processor sends the instruction information of the plurality of configuration templates of the target data processing task and the task information of the target data processing task to the scheduler.
The target data processing task indicates to perform various data processing on the target data, that is, indicates to perform various data processing tasks. Thus, the configuration templates of the target data processing tasks may comprise configuration templates of each of a plurality of data processing tasks, i.e. a plurality of configuration templates (e.g. configuration templates of a first data processing task, configuration templates of a second data processing task, configuration templates of a third data processing task).
Continuing with the foregoing target image processing task-image processing task C1 as an example, the plurality of configuration templates of the image processing task C1 includes a configuration template of a noise removal task, a configuration template of a target recognition task, and a configuration template of an image encoding task.
The task information of the target data processing task may be used to indicate various data processing required to be performed to achieve the target data processing task, and may also be used to indicate data required to be processed by the target data processing task.
Thus, the task information of the target data processing task that the general-purpose processor sends to the scheduler may include indication information of various data processes that need to be performed to achieve the target data processing task, data indication parameters of the target data processing task (e.g., address parameters of the target data processing task).
The indication information of the data processing can be represented in various feasible data forms and is used for indicating the processing mode of the data processing. For example, the indication of the data processing may be a textual description of the data processing, instructions, etc.
The address parameters of the target data processing task may include an input data address parameter, an output data address parameter of the target data processing task.
The input data address parameter of the target data processing task is used to indicate the save address of the input data (i.e. processed data) of the target data processing task.
The output data address parameter of the target data processing task is used to indicate a save address of output data (i.e., a processing result obtained by processing data) of the target data processing task.
Step 430, the scheduler configures a plurality of accelerators according to the indication information of the configuration templates of the target data processing task and the task information of the target data processing task.
In step 430, the scheduler may sequentially configure the plurality of accelerators in the processing order of the plurality of data processing tasks indicated by the target data processing task. In this manner, the plurality of accelerators may process the plurality of data processing tasks in order, completing the target data processing task.
The process of configuring a plurality of accelerators by the scheduler will be described below taking the aforementioned target image processing task-image processing task C1 as an example.
The image processing task C1 instructs to perform a noise removal process (referred to as a noise removal task) on an image (i.e., target data), to perform a target recognition process (referred to as a target recognition task) on the image after the noise removal, and to perform an image encoding process (referred to as an image encoding task) on the image after the target recognition.
The image processing task C1 is completed by processing the noise removal task by the accelerator 1, then processing the object recognition task by the accelerator 2, and then processing the image encoding task by the accelerator 3.
In some embodiments, the accelerator 1 is used to process the image signal output by the image signal sensor, and may be referred to as an Image Signal Processor (ISP) accelerator. The accelerator 2 is used to perform various required processes on the image output from the ISP accelerator, and may be referred to as an image processing accelerator. The accelerator 3 is used to perform encoding processing on an image output from the image processing accelerator, and may be referred to as an encoding accelerator.
The plurality of configuration templates of the image processing task C1 comprise a configuration template of a noise removing task, a configuration template of a target identifying task and a configuration template of an image coding task.
The process of configuring a plurality of accelerators (including accelerator 1, accelerator 2, accelerator 3) by the scheduler includes the following S1 to S3:
S1, the scheduler executes the configuration operation of the accelerator 1.
In S1, the scheduler may send the received indication of the configuration template of the first data processing task-the indication of the configuration template of the noise removal task-to the accelerator 1. So that the accelerator 1 obtains a configuration template of the noise removal task according to the instruction information, and configures the accelerator 1 (e.g., configures a storage space of the accelerator 1) according to the configuration template of the noise removal task.
The configuration template of the noise removing task comprises processing parameters of the noise removing task and a first target pointer. The first target pointer indicates a first target storage space, and the first target storage space is used for storing data indication parameters of the noise removing task.
The data indication parameters of the noise removal task include the address parameters of the noise removal task, and the address parameters of the noise removal task include the input data address parameters of the noise removal task (i.e., the input data address parameters of the target data processing task) and the output data address parameters (which can be generated by the processing device such as the scheduler or the accelerator 1 according to the requirements).
The specific operation of configuring the accelerator 1 according to the configuration template is similar to that of step 220 in fig. 2, and reference is made to the description of step 220.
And wherein the data indicative parameter of the noise removal task may be written to the first target storage space by the scheduler. For example, the scheduler may be implemented by an accelerator, and the data indication parameter of the noise removal task may be written by the accelerator into the first target storage space.
Thus, after the accelerator 1 is configured, the accelerator 1 may acquire task parameters of the noise removal task according to the configuration result, and execute the noise removal task according to the task parameters.
S2, the scheduler executes the configuration operation of the accelerator 2.
In S2, the scheduler may send the received indication of the configuration template of the second data processing task-indication of the configuration template of the target recognition task-to the accelerator 2. So that the accelerator 2 obtains a configuration template of the object recognition task according to the instruction information, and configures the accelerator 2 (e.g., configures a storage space of the accelerator 2) according to the configuration template of the object recognition task.
The configuration template of the target recognition task comprises processing parameters of the target recognition task and a second target pointer. The second target pointer indicates a second target storage space, and the second target storage space is used for storing data indication parameters of the target identification task.
The data indication parameters of the target recognition task include address parameters of the target recognition task, and the address parameters of the target recognition task include input data address parameters of the target recognition task (i.e., output data address parameters of the noise removal task), and output data address parameters (which may be generated by a processing device such as the scheduler or accelerator 2 according to requirements).
The specific operation of configuring the accelerator 2 according to the configuration template is similar to that of step 220 in fig. 2, and reference is made to the description of step 220.
And wherein the data indicative parameter of the target recognition task may be written to the second target storage space by the scheduler. For example, the scheduler may be implemented by an accelerator, which may write data indicative of the target recognition task parameters to the second target storage space.
Thus, after the accelerator 2 is configured, the accelerator 2 may acquire the task parameters of the target recognition task according to the configuration result, and execute the target recognition task according to the task parameters.
S3, the scheduler executes the configuration operation of the accelerator 3.
In S3, the scheduler may send the received indication of the configuration template of the third data processing task-the indication of the configuration template of the image encoding task-to the accelerator 3. So that the accelerator 3 obtains a configuration template of the image encoding task according to the instruction information, and configures the accelerator 3 (e.g., configures a storage space of the accelerator 3) according to the configuration template of the image encoding task.
The configuration template of the image coding task comprises processing parameters of the image coding task and a third target pointer. The third target pointer indicates a third target storage space for storing data indicating parameters of the image encoding task.
The data indication parameters of the image encoding task include address parameters of the image encoding task, and the address parameters of the image encoding task include input data address parameters of the image encoding task (i.e., output data address parameters of the target recognition task), output data address parameters (i.e., output data address parameters of the target data processing task).
The specific operation of configuring the accelerator 3 according to the configuration template is similar to that of step 220 in fig. 2, and reference is made to the description of step 220.
And wherein the data indicative parameter of the image encoding task may be written to the third target storage space by the scheduler. For example, the scheduler is implemented by an accelerator, and the data indication parameter of the image encoding task may be written into the third target storage space by the accelerator.
Thus, after configuring the accelerator 3, the accelerator 3 may acquire task parameters of the image encoding task according to the configuration result, and execute the image encoding task according to the task parameters.
After the accelerator 1, the accelerator 2 and the accelerator 3 all complete their corresponding data processing tasks, the target data processing task-the image processing task C1 is processed.
By the information processing method (for example, the method shown in fig. 4) provided by the embodiment of the application, in a scene that a plurality of accelerators are required to process a plurality of data processing tasks respectively to complete a target data processing task, a scheduler can realize automatic configuration of the plurality of accelerators by indicating to the plurality of accelerators a configuration template to be used respectively and writing data indicating parameters of the plurality of data processing tasks into a target storage space.
The information processing method provided according to the embodiment of the present application is described in detail above with reference to fig. 2 to 4. The device provided according to the present application will be described below with reference to fig. 5. These means may be used to implement the functions of the processor in the above-described method embodiments, and thus may also implement the advantages provided by the above-described method embodiments.
Fig. 5 is a schematic structural diagram of an information processing apparatus according to an embodiment of the present application. As shown in fig. 5, the information processing apparatus 500 includes a task acquisition module 510 and a configuration module 520.
The task acquisition module 510 is configured to acquire a data processing task including a processing parameter used for data processing and a data instruction parameter for instructing the data.
The configuration module 520 is configured to configure an accelerator according to a configuration template of the data processing task, the configuration template including processing parameters and pointers indicating a target storage space, the target storage space being configured to store data indicating parameters, the accelerator being configured to obtain the processing parameters and the data indicating parameters according to a configuration result, and to perform the data processing task according to the processing parameters and the data indicating parameters.
In some possible implementations, the configuration module 520 is further configured to obtain a configuration template of the data processing task from at least one configuration template of the at least one data processing task.
In some possible implementations, the at least one configuration template includes a first configuration template including processing parameters of the first type of processing and pointers to the first target storage space and a second configuration template including processing parameters of the second type of processing and pointers to the second target storage space.
In some possible implementations, the at least one configuration template includes a first configuration template including a plurality of configuration templates including a third configuration template including processing parameters of the first process and pointers indicating a third target storage space and a fourth configuration template including processing parameters of the first process and pointers indicating a fourth target storage space.
In some possible implementations, the data processing tasks include a first data processing task for indicating a first type of processing of the first data and a second data processing task for indicating a second type of processing of the second data.
In some possible implementations, the configuration module 520 is further configured to configure the accelerator according to a configuration template of a first data processing task, the configuration template of the first data processing task including processing parameters of a first type of processing and pointers indicating a first target storage space for storing data indication parameters of the first data. And configuring the accelerator according to a configuration template of the second data processing task, the configuration template of the second data processing task comprising processing parameters of the second type of processing and a pointer indicating a second target storage space for storing data indication parameters of the second data. In some possible implementations, the second data is a processing result obtained by performing the first processing on the first data.
In some possible implementations, the data processing tasks include a third data processing task for performing the first processing on the third data and a fourth data processing task for performing the first processing on the fourth data.
In some possible implementations, the configuration module 520 is further configured to configure the accelerator according to a configuration template of a third data processing task, the configuration template of the third data processing task including processing parameters of the first type of processing and pointers indicating a third target storage space for storing data indication parameters of the third data. And configuring the accelerator according to a configuration template of a fourth data processing task, the configuration template of the fourth data processing task comprising processing parameters of the first type of processing and a pointer indicating a fourth target storage space, the fourth target storage space being for storing data indication parameters of fourth data.
In some possible implementations, the data indication parameter includes an address parameter for indicating a save address of the data. The address parameters of the data processing task include at least one of an input data address parameter and an output data address parameter. The input data address parameter is used for indicating the storage address of the data, and the output data address parameter is used for indicating the storage address of the processing result of the data.
In some possible implementations, the configuration module 520 is further configured to configure the memory space of the accelerator according to a configuration template of the data processing task, such that the processing parameters included in the configuration template and the pointer indicating the target memory space are saved in the memory space of the accelerator.
Alternatively, the task acquisition module 510 and the configuration module 520 may each include a plurality of sub-modules that may each be deployed to respectively implement part of the functionality of the corresponding module, such as implementing one or more steps of the information processing methods provided in fig. 2-4 described above.
In some possible implementations, the configuration module 520 further includes a first configuration module (not shown in fig. 5), which may be disposed on the general purpose processor, and a second configuration module (not shown in fig. 5), which may be disposed on the accelerator.
The first configuration module is used for sending the indication information of the configuration template of the data processing task to the accelerator.
The second configuration module is used for acquiring a configuration template of the data processing task according to the indication information and configuring the accelerator according to the configuration template of the data processing task.
In some possible implementations, the second configuration module is further configured to configure a storage space of the accelerator according to a configuration template of the data processing task, so that the processing parameters included in the configuration template and the pointer indicating the target storage space are stored in the storage space of the accelerator.
In some possible implementations, the data indication parameters of the data processing task may be written to the target storage space for saving by the first configuration module or the second configuration module.
The apparatus may be implemented by software, or may be implemented by hardware. Illustratively, an implementation of the information processing apparatus 500 is described next.
Module as an example of a software functional unit, the information processing apparatus 500 may include code running on a computing instance. Wherein the computing instance may be at least one of a physical host (computing device), a virtual machine, a container, etc. computing device. Further, the above-described computing examples may be one or more. For example, the information processing apparatus 500 may include code running on a plurality of hosts/virtual machines/containers. It should be noted that, multiple hosts/virtual machines/containers for running the code may be distributed in the same region (region), or may be distributed in different regions. Further, multiple hosts/virtual machines/containers for running the code may be distributed in the same availability zone (availability zone, AZ) or may be distributed in different AZs, each AZ comprising one data center or multiple geographically close data centers. Wherein typically a region may comprise a plurality of AZs.
Also, multiple hosts/virtual machines/containers for running the code may be distributed in the same virtual private cloud (virtual private cloud, VPC) or may be distributed in multiple VPCs. In general, one VPC is disposed in one region, and a communication gateway is disposed in each VPC for implementing inter-connection between VPCs in the same region and between VPCs in different regions.
Modules as an example of hardware functional units, the information processing apparatus 500 may include at least one computing device, such as a server or the like. Alternatively, the information processing apparatus 500 may be a device or the like implemented by an application-specific integrated circuit (ASIC), or a programmable logic device (programmable logic device, PLD). The PLD may be implemented as a complex program logic device (complex programmable logical device, CPLD), a field-programmable gate array (FPGA) GATE ARRAY, a general-purpose array logic (GENERIC ARRAY logic, GAL), or any combination thereof.
The plurality of computing devices included in the information processing apparatus 500 may be distributed in the same region or may be distributed in different regions. The plurality of computing devices included in the information processing apparatus 500 may be distributed in the same AZ or may be distributed in different AZ. Also, a plurality of computing devices included in the information processing apparatus 500 may be distributed in the same VPC or may be distributed in a plurality of VPCs. Wherein the plurality of computing devices may be any combination of computing devices such as servers, ASIC, PLD, CPLD, FPGA, and GAL.
The present application also provides a computing device 600. As shown in fig. 6, computing device 600 includes a bus 602, a processor 604, a memory 606, and a communication interface 608. The processor 604, the memory 606, and the communication interface 608 communicate via the bus 602. Computing device 600 may be a server or a terminal device. It should be understood that the present application is not limited to the number of processors, memories in computing device 600. Alternatively, the processor 604 of the computing device 600 may be coupled to a display, an input device (not shown in FIG. 6) via the communication interface 608.
Bus 602 may be a peripheral component interconnect standard (PERIPHERAL COMPONENT INTERCONNECT, PCI) bus, or an extended industry standard architecture (extended industry standard architecture, EISA) bus, among others. The buses may be divided into address buses, data buses, control buses, etc. For ease of illustration, only one line is shown in fig. 6, but not only one bus or one type of bus. Bus 602 may include a path to transfer information between various components of computing device 600 (e.g., memory 606, processor 604, communication interface 608).
The processor 604 may include any one or more of a central processing unit (central processing unit, CPU), a graphics processor (graphics processing unit, GPU), a Microprocessor (MP), or a digital signal processor (DIGITAL SIGNAL processor, DSP). In an embodiment of the present application, the processor 604 is configured to perform steps or operations in the information processing methods set forth in fig. 2-4 in the embodiment of the present application.
The memory 606 may include volatile memory (RAM), such as random access memory (random access memory). The processor 604 may also include non-volatile memory (non-volatile memory), such as read-only memory (ROM), flash memory, mechanical hard disk (HARD DISK DRIVE, HDD) or solid state disk (SSD STATE DRIVE).
The memory 606 has stored therein executable program codes that the processor 604 executes to implement the functions of the task acquisition module 510 and the configuration module 520, respectively, to implement the information processing method set forth in fig. 2-4 in the embodiment of the present application. That is, the memory 606 has instructions stored thereon for performing the information processing methods set forth in fig. 2 to 4 in the embodiment of the present application.
Communication interface 608 enables communication between computing device 600 and other devices or communication networks using transceiver modules such as, but not limited to, network interface cards, transceivers, and the like.
The display may include a plasma display, a liquid crystal display, and the like, which can realize various display devices for display functions. The computing device 600 may implement the display functions involved in the information processing methods set forth in fig. 2-4 in embodiments of the present application via a display.
Input devices may include a keyboard, mouse, touch screen, etc. various input devices that may enable information/signal input.
Embodiments of the present application also provide a computer program product comprising instructions. The computer program product may be a software or program product containing instructions capable of running on a computing device or stored in any useful medium. The computer program product may contain instructions for performing steps or operations in the information processing method proposed in fig. 2-4 in the embodiment of the present application. The computer program product, when executed on at least one computing device, causes the at least one computing device to perform the steps or operations of the information processing method set forth in fig. 2-4 in embodiments of the application.
The embodiment of the application also provides a computer readable storage medium. The computer readable storage medium may be any available medium that can be stored by a computing device or a data storage device such as a data center containing one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk), etc. The computer-readable storage medium includes instructions that instruct a computing device to perform steps or operations of the information processing method set forth in fig. 2-4 in an embodiment of the present application.
It should be noted that the above-mentioned embodiments are merely for illustrating the technical solution of the present application, and not for limiting the same, and although the present application has been described in detail with reference to the above-mentioned embodiments, it should be understood by those skilled in the art that the technical solution described in the above-mentioned embodiments may be modified or some technical features may be equivalently replaced, and these modifications or substitutions do not make the essence of the corresponding technical solution deviate from the protection scope of the technical solution of the embodiments of the present application.
The terms "first," "second," "third," and "fourth" and the like in the description and in the claims of the application and in the above drawings, are used for distinguishing between different objects and not for limiting the specified order.
In embodiments of the application, words such as "exemplary" or "such as" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g." in an embodiment should not be taken as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.

Claims (25)

1. An information processing method, characterized in that the method comprises:
acquiring a data processing task, wherein the data processing task comprises processing parameters used for data processing and data indication parameters used for indicating the data;
And configuring an accelerator according to a configuration template of the data processing task, wherein the configuration template comprises the processing parameters and pointers for indicating target storage space, the target storage space is used for storing the data indicating parameters, the accelerator is used for acquiring the processing parameters and the data indicating parameters according to configuration results, and executing the data processing task according to the processing parameters and the data indicating parameters.
2. The method according to claim 1, wherein the method further comprises:
A configuration template of at least one data processing task is obtained from at least one configuration template of the data processing task.
3. The method of claim 2, wherein the at least one configuration template comprises a first configuration template and a second configuration template, the first configuration template comprising processing parameters of a first type of processing and pointers to a first target storage space, the second configuration template comprising processing parameters of a second type of processing and pointers to a second target storage space.
4. A method according to claim 2 or 3, wherein the at least one configuration template comprises a first configuration template comprising a plurality of configuration templates including a third configuration template comprising processing parameters of a first type of processing and pointers indicating a third target storage space and a fourth configuration template comprising processing parameters of the first type of processing and pointers indicating a fourth target storage space.
5. The method of any of claims 1-4, wherein the data processing tasks include a first data processing task for indicating a first type of processing of first data and a second data processing task for indicating a second type of processing of second data;
The configuring the accelerator according to the configuration template of the data processing task comprises the following steps:
configuring the accelerator according to a configuration template of the first data processing task, wherein the configuration template of the first data processing task comprises processing parameters of the first type of processing and a pointer for indicating a first target storage space, and the first target storage space is used for storing data indication parameters of the first data;
And configuring the accelerator according to a configuration template of the second data processing task, wherein the configuration template of the second data processing task comprises processing parameters of the second processing and pointers for indicating a second target storage space, and the second target storage space is used for storing data indication parameters of the second data.
6. The method according to any of claims 1-5, wherein the data processing tasks comprise a third data processing task for performing a first type of processing on third data and a fourth data processing task for performing a first type of processing on fourth data;
The configuring the accelerator according to the configuration template of the data processing task comprises the following steps:
configuring the accelerator according to a configuration template of the third data processing task, wherein the configuration template of the third data processing task comprises processing parameters of the first processing and a pointer indicating a third target storage space, and the third target storage space is used for storing data indicating parameters of the third data;
the accelerator is configured according to a configuration template of the fourth data processing task, wherein the configuration template of the fourth data processing task comprises processing parameters of the first processing and a pointer indicating a fourth target storage space, and the fourth target storage space is used for storing data indicating parameters of the fourth data.
7. The method of claim 5, wherein the second data is a result of the first processing performed on the first data.
8. The method according to any one of claims 1-7, wherein the data indication parameter comprises an address parameter for indicating a save address of the data, the address parameter comprising at least one of an input data address parameter and an output data address parameter;
The input data address parameter is used for indicating the save address of the data, and the output data address parameter is used for indicating the save address of the processing result of the data.
9. The method of any of claims 1-8, wherein an information handling system comprises a general purpose processor and the accelerator, the configuring the accelerator according to a configuration template for the data handling task comprising:
The general processor sends the indication information of the configuration template of the data processing task to the accelerator;
the accelerator acquires a configuration template of the data processing task according to the indication information, and configures the accelerator according to the configuration template of the data processing task.
10. The method according to any of claims 1-9, wherein configuring an accelerator according to a configuration template of the data processing task comprises:
And configuring the storage space of the accelerator according to the configuration template of the data processing task, so that the processing parameters and the pointer indicating the target storage space, which are included by the configuration template, are stored in the storage space of the accelerator.
11. An information processing method, the method being performed by a general purpose processor, the method comprising:
acquiring a data processing task, wherein the data processing task comprises processing parameters used for data processing and data indication parameters used for indicating the data;
The method comprises the steps of sending indication information of a configuration template of the data processing task to an accelerator, wherein the indication information is used for indicating the configuration template of the data processing task, the configuration template of the data processing task is used for configuring the accelerator, the configuration template comprises the processing parameters and a pointer for indicating a target storage space, and the target storage space is used for storing the data indication parameters.
12. The method of claim 11, wherein the method further comprises:
a configuration template for at least one data processing task is determined in at least one configuration template for the data processing task.
13. The method of claim 12, wherein the at least one configuration template comprises a first configuration template and a second configuration template, the first configuration template comprising process parameters of a first process and pointers to a first target storage space, the second configuration template comprising process parameters of a second process and pointers to a second target storage space.
14. The method of claim 12 or 13, wherein the at least one configuration template comprises a first configuration template comprising a plurality of configuration templates including a third configuration template comprising process parameters of a first process and pointers indicating a third target storage space and a fourth configuration template comprising process parameters of the first process and pointers indicating a fourth target storage space.
15. An information processing method, characterized in that the method is performed by an accelerator, the method comprising:
Receiving indication information of a configuration template of a data processing task;
The method comprises the steps of obtaining a configuration template of the data processing task according to the indication information, and configuring the accelerator according to the configuration template of the data processing task, wherein the data processing task comprises processing parameters used for data processing and data indication parameters used for indicating the data, the configuration template comprises the processing parameters and a pointer used for indicating a target storage space, and the target storage space is used for storing the data indication parameters;
the accelerator is used for acquiring the processing parameters and the data indication parameters according to configuration results and executing the data processing tasks according to the processing parameters and the data indication parameters.
16. The method of claim 15, wherein the data processing tasks include a first data processing task for indicating a first type of processing of the first data and a second data processing task for indicating a second type of processing of the second data;
The configuring the accelerator according to the configuration template of the data processing task comprises the following steps:
configuring the accelerator according to a configuration template of the first data processing task, wherein the configuration template of the first data processing task comprises processing parameters of the first type of processing and a pointer for indicating a first target storage space, and the first target storage space is used for storing data indication parameters of the first data;
And configuring the accelerator according to a configuration template of the second data processing task, wherein the configuration template of the second data processing task comprises processing parameters of the second processing and pointers for indicating a second target storage space, and the second target storage space is used for storing data indication parameters of the second data.
17. A method according to claim 15 or 16, wherein the data processing tasks comprise a third data processing task for performing a first type of processing on third data and a fourth data processing task for performing a first type of processing on fourth data;
The configuring the accelerator according to the configuration template of the data processing task comprises the following steps:
configuring the accelerator according to a configuration template of the third data processing task, wherein the configuration template of the third data processing task comprises processing parameters of the first processing and a pointer indicating a third target storage space, and the third target storage space is used for storing data indicating parameters of the third data;
the accelerator is configured according to a configuration template of the fourth data processing task, wherein the configuration template of the fourth data processing task comprises processing parameters of the first processing and a pointer indicating a fourth target storage space, and the fourth target storage space is used for storing data indicating parameters of the fourth data.
18. The method of claim 16, wherein the second data is a result of the first processing performed on the first data.
19. The method according to any of claims 15-17, wherein said configuring the accelerator according to a configuration template of the data processing task comprises:
And configuring the storage space of the accelerator according to the configuration template of the data processing task, so that the processing parameters and the pointer indicating the target storage space, which are included by the configuration template, are stored in the storage space of the accelerator.
20. An information processing apparatus, characterized in that the apparatus comprises:
The task acquisition module is used for acquiring a data processing task, wherein the data processing task comprises a processing parameter used for processing data and a data indication parameter used for indicating the data;
The configuration module is used for configuring an accelerator according to a configuration template of the data processing task, the configuration template comprises the processing parameters and pointers for indicating a target storage space, the target storage space is used for storing the data indicating parameters, the accelerator is used for acquiring the processing parameters and the data indicating parameters according to a configuration result, and the data processing task is executed according to the processing parameters and the data indicating parameters.
21. An information handling system, characterized in that the system comprises a general purpose processor for performing the method according to any of claims 11-14 and an accelerator for performing the method according to any of claims 15-19.
22. A chip system comprising a processor and a power supply circuit for powering the processor, the processor for performing the operational steps of the method of any of claims 1-19.
23. A computing device comprising a processor and a memory, the processor configured to execute instructions stored in the memory to cause the computing device to perform the method of any of claims 1-19.
24. A computer program product containing instructions that, when executed by at least one computing device, cause the at least one computing device to perform the method of any of claims 1-19.
25. A computer readable storage medium comprising computer program instructions which, when executed by a computing device, perform the method of any of claims 1-19.
CN202411299422.3A 2024-09-14 2024-09-14 Information processing method, device and system Pending CN121680914A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202411299422.3A CN121680914A (en) 2024-09-14 2024-09-14 Information processing method, device and system
PCT/CN2025/101724 WO2026056390A1 (en) 2024-09-14 2025-06-18 Information processing method, apparatus and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202411299422.3A CN121680914A (en) 2024-09-14 2024-09-14 Information processing method, device and system

Publications (1)

Publication Number Publication Date
CN121680914A true CN121680914A (en) 2026-03-17

Family

ID=99040766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202411299422.3A Pending CN121680914A (en) 2024-09-14 2024-09-14 Information processing method, device and system

Country Status (2)

Country Link
CN (1) CN121680914A (en)
WO (1) WO2026056390A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9830354B2 (en) * 2013-08-07 2017-11-28 International Business Machines Corporation Accelerating multiple query processing operations
US9785444B2 (en) * 2013-08-16 2017-10-10 Analog Devices Global Hardware accelerator configuration by a translation of configuration data
CN116467245A (en) * 2022-01-12 2023-07-21 华为技术有限公司 Computing system, method, device and acceleration device
CN116416116A (en) * 2023-05-08 2023-07-11 北京地平线信息技术有限公司 Method, device and chip for processing image through artificial intelligent accelerator

Also Published As

Publication number Publication date
WO2026056390A1 (en) 2026-03-19

Similar Documents

Publication Publication Date Title
US11500802B1 (en) Data replication for accelerator
CN111897660B (en) Model deployment method, model deployment device and terminal equipment
CN109697468B (en) Sample image labeling method and device and storage medium
US11182314B1 (en) Low latency neural network model loading
CN113886162B (en) Computing device performance test method, computing device and storage medium
CN111880916A (en) Multi-drawing task processing method, device, terminal, medium and host in GPU
CN111190842A (en) Direct memory access, processor, electronic device and data transfer method
US12229059B1 (en) Request processing method and apparatus, device, and medium
CN112487067A (en) Method, device and storage medium for page display based on data configuration
CN112199404A (en) Report creation method, apparatus, electronic device and computer-readable storage medium
CN121680914A (en) Information processing method, device and system
US20250123766A1 (en) Method, system, and circuit for deploying file system on embedded memory in programmable computing device
CN113407254A (en) Form generation method and device, electronic equipment and storage medium
CN115904240B (en) Data processing methods, apparatus, electronic devices and storage media
CN112817534B (en) Method, device, computer equipment and storage medium for improving SSD read-write performance
CN117369951A (en) Virtual machine communication method and device, storage medium and electronic equipment
CN116302220A (en) A database sorting method, device, sorting acceleration board and medium
CN115309554A (en) Debugging method, debugging system and computing device for application running based on compatible layer
US9928187B2 (en) Increasing data throughput in the image processing path of a document reproduction device
WO2026061332A2 (en) Heterogeneous computing processing method and electronic device
CN119377112B (en) Script running result comparison method, system, equipment and product
JP2021064166A (en) Memory control device and control method
CN121328748A (en) A method, apparatus, electronic device, and storage medium for processing recurring tasks.
US20240362077A1 (en) System and method for workload management between hardware components
US20260120437A1 (en) System and method for generating a data pipeline for computer vision

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