Data processing method, electronic equipment and medium

By detecting and utilizing the processing performance of computing devices in terminal devices, and transferring data processing tasks to computing devices using graphics and neural network APIs, the problems of lag and slow speed of terminal devices under high computing power requirements are solved, thereby improving the operating efficiency of the devices.

CN121597385APending Publication Date: 2026-03-03HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411158490.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-21
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

When terminal devices are running functions that require high computing power, the processor may be unable to execute some functions in a timely manner, resulting in lag or slow data processing speed.

Method used

By detecting the processing performance of connected computing devices, data processing tasks are transferred to NPUs and GPUs with greater computing power using APIs, including data interception and transfer via graphics APIs and neural network APIs.

Benefits of technology

It effectively reduces or avoids problems such as lag and slow data processing caused by insufficient computing power of terminal devices, and improves the operating efficiency of terminal devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121597385A_ABST
    Figure CN121597385A_ABST
Patent Text Reader

Abstract

The invention relates to the field of data processing, and discloses a data processing method, electronic equipment and a medium. According to the data processing method, when the first terminal device runs the preset functions, such as a voice recognition function, a large-scale scene game and other functions needing high-computing-power processors such as NPU and GPU for data processing, if it is detected that the second terminal device (or called computing power device) which is connected with the first terminal device and has corresponding processing performance exists, the first terminal device operates the preset functions; a data processing request corresponding to the processing performance can be sent to the second terminal device through an API (such as a neural network API corresponding to an NPU processor and a graphic API corresponding to a GPU processor), so that the second terminal device processes the to-be-processed data based on the data processing request. The problem that operation of the first terminal device is stuck or data processing is slow due to insufficient computing power of the first terminal device can be effectively reduced or avoided, and the operation efficiency of the first terminal device is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing, specifically to a data processing method, electronic device, and medium. Background Technology

[0002] Currently, due to the limited computing power of terminal devices, when running computationally demanding functions, the processor may be unable to execute some functions in a timely manner, leading to lag and stuttering. For example, when running large-scale games, the graphics processing unit (GPU) is required to render a large number of images to be displayed. Insufficient GPU computing power can prevent the timely rendering of these images, causing the terminal device's interface to lag. Similarly, when performing functions such as speech recognition and image processing (e.g., beautification), the neural network processing unit (NPU) is needed to run complex artificial intelligence models. Insufficient NPU computing power can slow down data processing on the terminal device, negatively impacting the user experience. Summary of the Invention

[0003] To address the issue that when terminal devices operate functions requiring high computing power, the processor may be unable to execute some functions in a timely manner, resulting in lag or slow data processing speed, this application provides a data processing method, electronic device, and medium.

[0004] In a first aspect, embodiments of this application provide a data processing method, comprising: a first terminal device detecting first data to be processed by a first application, and obtaining second data to be processed based on the first data to be processed, corresponding to the processing performance of a second terminal device; the first terminal device sending a first data processing request to the second terminal device through a first API of the first terminal device, wherein the first data processing request includes the second data to be processed; the second terminal device processing the second data to be processed to obtain a data processing result; and the second terminal device sending the data processing result to the first terminal device.

[0005] In some embodiments, the first terminal device can be any terminal device such as a mobile phone, in-vehicle system, headphones, smartwatch, or smart glasses; the first application can be a game application, a voice assistant application, etc. In some embodiments, the first data to be processed can be image data to be processed, audio data to be recognized, etc. The second terminal device can be the computing power device mentioned in the embodiments of this application.

[0006] In some embodiments, the first terminal device includes an NPU and a GPU, and the second terminal device includes an NPU and a GPU. The processing performance of the first terminal device includes the processing performance corresponding to the NPU and the processing performance corresponding to the GPU of the first terminal device, and the processing performance of the second terminal device includes the processing performance corresponding to the NPU and the processing performance corresponding to the GPU of the computing device.

[0007] It is understood that, based on the data processing method mentioned in the embodiments of this application, if a computing power device (or a second terminal device) with corresponding processing performance connected to the first terminal device is detected, a data processing request corresponding to the aforementioned processing performance can be sent to the computing power device through an API (e.g., the neural network API corresponding to an NPU processor, or the graphics API corresponding to a GPU processor), so that the computing power device processes the data to be processed based on the data processing request. This can effectively reduce or avoid the problem of insufficient computing power of the first terminal device causing the first terminal device to lag or slow data processing, thereby improving the operating efficiency of the first terminal device.

[0008] In some embodiments, the second data to be processed can be data obtained by preprocessing the first data to be processed. For example, if the first application is a game application, the first data to be processed can be image data to be rendered, and the second data to be processed can be data obtained after preprocessing the image data to be rendered, such as image noise reduction. In some embodiments, the second data to be processed can be the same as the first data to be processed, that is, the first terminal device does not need to perform the above-mentioned preprocessing on the first data to be processed.

[0009] In one possible implementation of the first aspect, the first terminal device includes a first NPU and a first GPU, and the second terminal device includes a second NPU and a second GPU; the computing power of the first NPU is less than the computing power of the second NPU, and the computing power of the first GPU is less than the computing power of the second GPU; wherein, the processing performance of the second terminal device includes the processing performance corresponding to the second NPU and the processing performance corresponding to the second GPU.

[0010] In some embodiments, the fact that the computing power of the NPU of the first terminal device is less than that of the NPU of the second terminal device can refer to the fact that the computing power of the NPU of the first terminal device is less than that of the NPU of the second terminal device. For example, it can mean that the number of data processing units in the NPU of the first terminal device that can execute data processing tasks in parallel is less than the number of data processing units in the NPU of the second terminal device that can execute data processing tasks in parallel, and that the memory corresponding to the storage unit in the NPU of the first terminal device is less than the memory corresponding to the storage unit in the NPU of the second terminal device.

[0011] In some embodiments, the fact that the computing power of the GPU of the first terminal device is less than that of the GPU of the second terminal device can refer to the fact that the computing power of the GPU of the first terminal device is less than that of the GPU of the second terminal device. For example, it can refer to the fact that the number of data processing units in the GPU of the first terminal device that can execute data processing tasks in parallel is less than the number of data processing units in the GPU of the second terminal device that can execute data processing tasks in parallel, and the memory corresponding to the storage unit in the GPU of the first terminal device is less than the memory corresponding to the storage unit in the GPU of the second terminal device.

[0012] In some embodiments, if a second terminal device with a high computing power (i.e., possessing NPU and GPU processing capabilities) connected to the first terminal device is detected, a data processing request corresponding to the aforementioned processing capabilities can be sent to the second terminal device via APIs (e.g., the neural network API corresponding to the NPU processor, and the graphics API corresponding to the GPU processor). This allows the second terminal device to process the data to be processed based on the data processing request. This can effectively reduce or avoid the problem of insufficient computing power in the first terminal device causing lag or slow data processing, thereby improving the operating efficiency of the first terminal device.

[0013] In one possible implementation of the first aspect, corresponding to the first API being a graphics API, the first terminal device sends a first processing data request to the second terminal device through the first API of the first terminal device, including: the first terminal device sends the first processing data request to the second GPU of the second terminal device through the first API of the first terminal device; the second terminal device processes the second data to be processed to obtain a data processing result, including: the second GPU processes the second data to be processed based on the first data processing request to obtain a data processing result.

[0014] In one possible implementation of the first aspect, corresponding to the first API being a neural network API, the first terminal device sends a first processing data request to the second terminal device through the first API of the first terminal device, including: the first terminal device sends the first processing data request to the second NPU through the first API of the first terminal device; the second terminal device processes the second data to be processed to obtain a data processing result, including: the second NPU processes the second data to be processed based on the first data processing request to obtain a data processing result.

[0015] The graphics API mentioned in this application embodiment is a dedicated API used to enable applications to send data to the GPU; that is, applications need to call the graphics API to transmit data to the GPU. The neural network API is a dedicated API used to enable applications to send data to the NPU; that is, applications need to call the neural network API to transmit data to the NPU. This application embodiment does not limit the names of the graphics API and neural network API. For example, in different devices, the graphics API and neural network API can be replaced with APIs with other names that implement the same corresponding function.

[0016] It is understood that the data processing method provided in this application embodiment, by intercepting data from the CPU-side graphics API and neural network API and transferring the corresponding data processing tasks to the computing device for computation, can effectively reduce or avoid the problem of insufficient computing power of the first terminal device causing the first terminal device to run slowly or process data slowly, thereby improving the operating efficiency of the first terminal device.

[0017] In one possible implementation of the first aspect, the second terminal device is an independent computing device.

[0018] In some embodiments, the computing power device can be a standalone edge computing power device that integrates processing chips such as NPU and GPU with large computing power. For example, the standalone edge computing power device can be a portable device mainly used to provide computing power.

[0019] In one possible implementation of the first aspect, the second terminal device is an integrated device that integrates a second NPU and a second GPU within the terminal device.

[0020] In some embodiments, the computing device may also be an integrated device formed by integrating processing chips such as NPU and GPU with large computing power into existing devices, such as a routing device or audio device that integrates processing chips such as NPU and GPU with large computing power.

[0021] In some embodiments, the computing power device can also be a terminal device such as a computer that has a large computing power NPU and GPU.

[0022] In one possible implementation of the first aspect, the second terminal device includes one or more second NPUs and one or more second GPUs.

[0023] In one possible implementation of the first aspect, the first terminal device sends a first processing data request to the second terminal device through a first API of the first terminal device, including: corresponding to the computing power required to process the first data to be processed being greater than a preset computing power threshold, the first terminal device sends the first processing data request to the second terminal device through the first API of the first terminal device.

[0024] In some embodiments, when the first terminal device determines that the target computing power required to process the data to be processed is greater than a preset computing power threshold (e.g., 80% of the total computing power of the corresponding processor), it sends a first data processing request to the computing power device through a first API of the first terminal device. When the first terminal device determines that the target computing power required to process the data to be processed is less than or equal to the preset computing power threshold, the first terminal device can perform data processing on the first data to be processed. In this way, when the target computing power required to process the data to be processed is relatively small, the first terminal device can perform data processing itself, effectively reducing data transmission power consumption.

[0025] In one possible implementation of the first aspect, the second terminal device processes the second data to be processed to obtain a data processing result, including: the second terminal device acquiring computing power information of at least one third terminal device connected to the second terminal device; the second terminal device determining a target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device; the second terminal device sending a first data processing request to the target terminal device; and the second terminal device receiving the data processing result sent by the target terminal device, wherein the data processing result is obtained by the target terminal device processing the second data to be processed based on the first data processing request.

[0026] In some embodiments, the second terminal device (computing power device) can also connect to other terminal devices with large computing power NPUs and GPUs via home Bluetooth, cellular, or WiFi networking to achieve dynamic allocation of computing power. For example, after receiving a first data processing request, the computing power device can select any terminal device with remaining computing power greater than the target computing power information from at least one third terminal device connected to it, based on the computing power information of at least one third terminal device. This allows for dynamic allocation of computing power among multiple devices, improving the utilization rate and allocation rationality of computing resources.

[0027] In one possible implementation of the first aspect, the second terminal device acquires computing power information of at least one third terminal device with which it has established a connection, including: the second terminal device acquires the remaining computing power of the at least one third terminal device with which it has established a connection; the second terminal device determines a target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device, including: the second terminal device selects any terminal device among the at least one third terminal devices whose remaining computing power is greater than the target computing power as the target terminal device, wherein the target computing power is the computing power required to process the second data to be processed.

[0028] In one possible implementation of the first aspect, the second terminal device determines the target terminal device from at least one third terminal device based on the computing power information of at least one third terminal device, including: when the remaining computing power of the second terminal device is insufficient to meet the target computing power required to process the second data to be processed, the second terminal device determines the target terminal device from at least one third terminal device based on the computing power information of at least one third terminal device.

[0029] In some embodiments, after receiving a first data processing request, the computing power device can obtain the target computing power required to process the second data to be processed and the remaining computing power of the computing power device. When the remaining computing power of the computing power device cannot meet the target computing power required to process the second data to be processed, for example, when the remaining computing power of the computing power device is less than the computing power required to process the second data to be processed, the computing power device can select any terminal device whose remaining computing power information is greater than the target computing power information as the target terminal device based on the computing power information of at least one third terminal device connected to the computing power device. Then, the computing power device sends the first data processing request to the target terminal device to realize the processing of the second data to be processed based on the target terminal device and obtain the data processing result. In this way, even when the computing power device has insufficient computing power, it can still obtain the data processing result.

[0030] In one possible implementation of the first aspect, the first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: corresponding to the first terminal device having a first communication function and the computing device having a second communication function, the first terminal device sends a first data processing request to the fourth terminal device through the first API and based on a first communication method corresponding to the first communication function; the fourth terminal device sends the first data processing request to the second terminal device based on a second communication method corresponding to the second communication function.

[0031] In some embodiments, when the first terminal device (e.g., a smartwatch) has a first communication function (e.g., Bluetooth, Starlink, etc.) and the computing device has a second communication function (e.g., cellular, Wi-Fi, etc.) but lacks the first communication function, the first terminal device sends a first data processing request to the computing device through its first API. This may further include: the first terminal device sending a first data processing request to a fourth terminal device (e.g., a mobile phone) through the first API and based on a first communication method corresponding to the first communication function; and the fourth terminal device sending a first data processing request to a second terminal device based on a second communication method corresponding to the second communication function. Thus, when the first terminal device cannot connect to the second terminal device, data can be transmitted through an intermediate device.

[0032] In one possible implementation of the first aspect, the first communication method is a first short-range communication method, and the second communication method is a long-range wireless communication method or a second short-range communication method.

[0033] In one possible implementation of the first aspect, the first terminal device includes a preprocessing module; the first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: a first application sending a data preprocessing request to the preprocessing module through the first API, the data preprocessing request including first data to be processed; the preprocessing module preprocessing the first data to be processed based on the data preprocessing request to obtain second data to be processed; and the preprocessing module sending a first data processing request to the second electronic device.

[0034] In some embodiments, the first terminal device may perform preprocessing (e.g., audio vectorization processing, image noise reduction processing, etc.) on the data to be processed with relatively low computing power, and then send a data processing request corresponding to the preprocessed data to the computing power device, so that the computing power device can perform subsequent data processing (e.g., speech recognition processing, image rendering processing, etc.) with higher computing power.

[0035] In one possible implementation of the first aspect, corresponding to the first API being a graphics API, the data preprocessing module preprocesses the first data to be processed based on the data preprocessing request, including: the preprocessing module performs image denoising processing on the first data to be processed based on the data preprocessing request.

[0036] In one possible implementation of the first aspect, corresponding to the first API being a neural network API, the preprocessing module preprocesses the first data to be processed based on a data preprocessing request, including: the preprocessing module performing at least one of audio vectorization processing and prompt word auxiliary processing on the first data to be processed based on the data preprocessing request.

[0037] In some embodiments, to facilitate data transmission, the second data to be processed may also undergo preprocessing such as data privacy processing, format conversion processing, and compression encoding processing before transmission.

[0038] Secondly, embodiments of this application provide a computer-readable storage medium storing instructions that, when executed on an electronic device, cause the electronic device to perform the data processing method mentioned in this application.

[0039] Thirdly, this application provides an electronic device, comprising: a memory for storing instructions executed by one or more processors of the electronic device, and one or more processors for performing the data processing method mentioned in the claims of this application. Attached Figure Description

[0040] Figure 1aAccording to some embodiments of this application, a schematic diagram of a game page 001 of a mobile phone 100 is shown;

[0041] Figure 1b According to some embodiments of this application, a schematic diagram of another mobile phone 100's game page 001 is shown;

[0042] Figure 2 According to some embodiments of this application, a schematic diagram of the connection between a first terminal device and a computing device is shown;

[0043] Figure 3 According to some embodiments of this application, a schematic diagram of the connection between a first terminal device and other terminal devices is shown.

[0044] Figure 4 According to some embodiments of this application, a schematic flowchart of a data processing method is shown;

[0045] Figure 5 According to some embodiments of this application, a structural schematic diagram of a mobile phone 100 and a computing device 200 is shown;

[0046] Figure 6 According to some embodiments of this application, a flowchart of a data processing method in a game scene is shown;

[0047] Figure 7 According to some embodiments of this application, a flowchart of a data processing method in a speech recognition scenario is shown;

[0048] Figure 8 According to some embodiments of this application, a structural schematic diagram of a mobile phone 100 is shown. Detailed Implementation

[0049] The illustrative embodiments of this application include, but are not limited to, a data processing method, an electronic device, and a medium.

[0050] The embodiments of this application do not limit the specific form of the electronic device. For example, the electronic device can be a mobile phone, tablet, smart screen, wearable device (e.g., watch, smart glasses, helmet), earphone, vehicle-mounted mobile device (e.g., car infotainment system) and other terminal devices.

[0051] Figures 1a-1b Taking mobile phone 100 as an example of the terminal device, an exemplary application scenario of this application is shown.

[0052] like Figure 1aAs shown, when mobile phone 100 is running a game, the game page 001 corresponding to the game application is displayed on mobile phone 100. When the game application detects that the user moves the position of the game character (e.g., clicks the forward control 002) or rotates the character's view angle, it can call the graphics API to send an image processing request to the GPU driver to obtain the game rendering screen after the user moves the game character's position or rotates the character's view angle. The image processing request can include the image data to be rendered. After receiving the image processing request, the GPU driver can call the GPU to perform image processing on the image data to be rendered to obtain the rendered image, and send the rendered image to the display driver chip. After obtaining the rendered image, the display driver chip can control the display screen to display the rendered image. For example, as... Figure 1b As shown, the mobile phone displays the game rendering screen after the user moves the game character's position or rotates the character's view angle.

[0053] It's understandable that when running large-scale or heavily rendered games, the GPU is needed to render a large number of images to be displayed. In this case, insufficient GPU computing power can cause the terminal device to lag. Furthermore, in scenarios involving voice assistant-based voice dialogue, the NPU is needed to run complex or large AI models such as speech recognition models. In this case, insufficient NPU computing power can lead to slow data processing speeds on the terminal device, impacting the user experience.

[0054] To address the aforementioned technical problems, this application proposes a data processing method. When a first terminal device is running a preset function, such as a voice recognition function or a large-scale scene game that requires high-performance NPU, GPU, or other processors for data processing, if a computing device (or a second terminal device) with corresponding processing capabilities connected to the first terminal device is detected, for example, if a computing device with a large computing power (i.e., possessing NPU and GPU processing capabilities) connected to the first terminal device is detected, a data processing request corresponding to the aforementioned processing capabilities can be sent to the computing device via an API (e.g., a neural network API corresponding to an NPU processor or a graphics API corresponding to a GPU processor), so that the computing device processes the data to be processed based on the data processing request.

[0055] The computing power device can be a standalone edge computing power device integrating processing chips such as NPUs and GPUs with high computing power. For example, a standalone edge computing power device can be a portable device primarily used to provide computing power. The computing power device can also be an integrated device formed by integrating processing chips such as NPUs and GPUs with high computing power into existing devices. For example, it can be a router or audio device integrating processing chips such as NPUs and GPUs with high computing power. The computing power device can also be a terminal device such as a computer with a high-performance NPU and GPU. Thus, by having the computing power device perform some or all of the high-computing tasks in the first terminal device, the problem of insufficient computing power in the first terminal device leading to lag or slow data processing can be effectively reduced or avoided, thereby improving the operating efficiency of the first terminal device.

[0056] For example, the first terminal device can transfer some or all of the data processing tasks that require NPU processor or GPU processing to the computing power device for processing. In some embodiments, the first terminal device can call the corresponding API (e.g., the neural network API corresponding to the NPU processor, the graphics API corresponding to the GPU processor) to send a data processing request to the computing power device. Alternatively, the first terminal device can perform preprocessing on the data to be processed with less computational power (e.g., audio vectorization processing, image noise reduction processing, etc.), and then send a data processing request corresponding to the preprocessed data to the computing power device, so that the computing power device can perform subsequent data processing with greater computational power (e.g., speech recognition processing, image rendering processing, etc.). Then, the first terminal device can obtain the data processing results (e.g., speech recognition results, rendered images) obtained by the computing power device in processing the preprocessed data, and display the data processing results.

[0057] It should be noted that the graphics API mentioned in this application embodiment is a dedicated API for applications to send data to the GPU; that is, applications need to call the graphics API to transmit data to the GPU. The neural network API is a dedicated API for applications to send data to the NPU; that is, applications need to call the neural network API to transmit data to the NPU. This application embodiment does not limit the names of the graphics API and the neural network API. For example, in different devices, the graphics API and the neural network API can be replaced with APIs with other names that implement the same corresponding function.

[0058] It is understood that the data processing method provided in this application embodiment, by intercepting data from the CPU-side graphics API and neural network API and transferring the corresponding data processing tasks to the computing device for computation, can effectively reduce or avoid the problem of insufficient computing power of the first terminal device causing the first terminal device to run slowly or process data slowly, thereby improving the operating efficiency of the first terminal device.

[0059] It should be noted that the computing power of NPU and GPU can refer to their computational capabilities, such as the number of operations they can perform per second. It is understood that both NPU and GPU contain a large number of data processing units and storage units. Therefore, the computing power of NPU and GPU mentioned in this application embodiment can be characterized based on the number of data processing units in the NPU and GPU capable of executing data processing tasks in parallel, and the memory size corresponding to the storage units.

[0060] In some embodiments, the connection method between the first terminal device and the computing power device can be determined based on the communication functions of the first terminal device and the computing power device. In some embodiments, the connection method between the first terminal device and the computing power device can also be a wired connection method. This application does not limit this.

[0061] Figure 2 A schematic diagram illustrating the connection between a first terminal device and a computing power device is shown. For example, as... Figure 2 As shown, when the computing power device has cellular and wireless fidelity (Wi-Fi) communication capabilities, if the first terminal device is a mobile phone, vehicle system, cellular smartwatch, or other device with cellular and Wi-Fi communication capabilities, the connection method between the first terminal device and the computing power device can be cellular connection or direct Wi-Fi connection.

[0062] In some embodiments, for example, when the first terminal device is a smartwatch, earphones, or smart glasses (e.g., AR glasses, VR glasses) with Bluetooth or NearLink communication capabilities, the connection between the first terminal device and the computing power device can be indirect. That is, the first terminal device can connect to the computing power device through one or more intermediate devices. The intermediate devices can have Bluetooth or NearLink communication capabilities to connect with the first terminal device, and can also have cellular or WiFi communication capabilities to connect with the computing power device. For example, the intermediate device can be a mobile phone or other terminal devices.

[0063] In some embodiments, when the computing power device has Bluetooth or StarFlash communication function, and when the first terminal device is a device with Bluetooth or StarFlash communication function, the connection method between the first terminal device and the computing power device can be Bluetooth connection method or StarFlash connection method.

[0064] In some embodiments, the computing device can also connect to other terminal devices with larger NPUs and GPUs via home Bluetooth, cellular, or WiFi networking to achieve dynamic allocation of computing power. For example, when the computing device receives a data processing request from a first terminal device, it can obtain the target computing power required to process the data to be processed and the remaining computing power of the computing device itself. If it is determined that the remaining computing power of the computing device itself is less than the target computing power required to process the image data to be processed, the computing device can select a target terminal device from other terminal devices currently connected to it for data processing and obtain the data processing result. If the remaining computing power of the computing device itself is greater than or equal to the target computing power required to process the data to be processed, the computing device itself can process the data to be processed and obtain the data processing result. Figure 3 As shown, other terminal devices with significant computing power, such as NPUs or GPUs, can include computers, tablets, smart screens, routers, and speakers.

[0065] For example, if it is determined that the remaining computing power of the computing device itself is less than the target computing power required to process the image data, the computing device can obtain the remaining computing power of other terminal devices currently connected to it. The computing device can then select devices with remaining computing power greater than the target computing power from the terminal devices connected to it as candidate terminal devices, and can choose any candidate terminal device as the target terminal device, sending a data processing request to the target computing device. For example, if the target terminal device selected by the computing device is a tablet computer, the data processing request will be sent to the tablet computer for processing.

[0066] In some embodiments, the computing power device may also select the device with the largest remaining computing power among the candidate terminal devices as the target terminal device.

[0067] In some embodiments, the computing device can also be used as a control device for resource allocation. For example, when the computing device receives a data processing request from the first terminal device, the computing device itself does not process the data processing request, but instead sends the data processing request to the aforementioned target terminal device.

[0068] It is understandable that when the target terminal device processes the data to be processed based on the data processing request and obtains the data processing result, it can send the data processing result to the computing power device. After receiving the data processing result, the computing power device can send the data processing result to the first terminal device.

[0069] It should be noted that the remaining computing power of the devices mentioned in this application (such as the first terminal device, computing power device, and other terminal devices connected to the computing power device) can refer to any information used to characterize the remaining computing power, such as the number of remaining data processing units and the remaining memory in the processor corresponding to the processing performance of the data to be processed. The target computing power required to process the data to be processed mentioned in this application can refer to the number of data processing units and the memory in the processor corresponding to the processing performance required to process the data to be processed. Specifically, when the data to be processed is data that needs to be processed by the GPU, such as image data to be rendered, the processor corresponding to the processing performance of the data to be processed can refer to the GPU; when the data to be processed is data that needs to be processed by the NPU, such as voice data to be recognized, the processor corresponding to the processing performance of the data to be processed can refer to the NPU.

[0070] The data processing methods mentioned in this application are described below.

[0071] Figure 4 An interactive flowchart of a data processing method according to an embodiment of this application is shown, such as... Figure 4 As shown, the data processing methods include:

[0072] 101: The first terminal device detects the first data to be processed by the first application, and obtains the second data to be processed based on the first data to be processed, which is the processing performance data of the corresponding computing power device.

[0073] In some embodiments, the first terminal device can be any terminal device such as a mobile phone, vehicle system, headphones, smartwatch, or smart glasses.

[0074] In some embodiments, the first data to be processed may be image data to be processed, audio data to be recognized, etc.

[0075] In some embodiments, the first terminal device includes an NPU and a GPU, and the computing power device includes an NPU and a GPU. The computing power of the NPU in the first terminal device is less than the computing power of the NPU in the computing power device, and the computing power of the GPU in the first terminal device is less than the computing power of the GPU in the computing power device. The processing performance of the first terminal device includes the processing performance corresponding to the NPU and the processing performance corresponding to the GPU in the first terminal device, and the processing performance of the computing power device includes the processing performance corresponding to the NPU and the processing performance corresponding to the GPU in the computing power device.

[0076] In some embodiments, the fact that the computing power of the NPU of the first terminal device is less than that of the NPU of the computing power device can mean that the computing power of the NPU of the first terminal device is less than that of the NPU of the computing power device. For example, it can mean that the number of data processing units in the NPU of the first terminal device that can execute data processing tasks in parallel is less than the number of data processing units in the NPU of the computing power device that can execute data processing tasks in parallel, and that the memory corresponding to the storage unit in the NPU of the first terminal device is less than the memory corresponding to the storage unit in the NPU of the computing power device.

[0077] In some embodiments, the fact that the computing power of the GPU of the first terminal device is less than that of the GPU of the computing power device can refer to the fact that the computing power of the GPU of the first terminal device is less than that of the GPU of the computing power device. For example, it can refer to the fact that the number of data processing units in the GPU of the first terminal device that can execute data processing tasks in parallel is less than the number of data processing units in the GPU of the computing power device that can execute data processing tasks in parallel, and the memory corresponding to the storage unit in the GPU of the first terminal device is less than the memory corresponding to the storage unit in the GPU of the computing power device.

[0078] In some embodiments, the second data to be processed may be data obtained by preprocessing the first data to be processed.

[0079] For example, the first application is a game application, the first data to be processed can be the image data to be rendered, and the second data to be processed can be the data obtained after preprocessing the image data to be rendered, such as image denoising.

[0080] For example, the first application is a voice assistant application, the first data to be processed can be the voice data to be recognized, and the second data to be processed can be the data obtained after preprocessing the voice data to be recognized, such as audio vectorization processing and prompt word auxiliary processing.

[0081] In some embodiments, the second data to be processed may be the same as the first data to be processed, that is, the first terminal device does not need to perform the above-mentioned preprocessing on the first data to be processed.

[0082] It is understood that the above preprocessing methods are merely illustrative examples, and other preprocessing methods may be included depending on the data to be processed. This application does not limit the scope of these methods.

[0083] In some embodiments, to facilitate data transmission, the second data to be processed may also undergo preprocessing such as data privacy processing, format conversion processing, and compression encoding processing before transmission.

[0084] 102: The first terminal device sends a first data processing request to the computing power device through the first API of the first terminal device.

[0085] In some embodiments, when the first terminal device determines that the target computing power required to process the data to be processed is greater than a preset computing power threshold (e.g., 80% of the total computing power of the corresponding processor), the first terminal device may send a first data processing request to the computing power device through a first API of the first terminal device. When the first terminal device determines that the target computing power required to process the data to be processed is less than or equal to the preset computing power threshold, the first terminal device may perform data processing on the first data to be processed.

[0086] In some embodiments, when the first terminal device determines that the target computing power required to process the data to be processed is greater than or equal to the remaining computing power of the processor with the corresponding processing performance, the first terminal device may send a first data processing request to the computing power device through a first API of the first terminal device. When the first terminal device determines that the target computing power required to process the data to be processed is less than the remaining computing power of the processor with the corresponding processing performance, the first terminal device may perform data processing on the first data to be processed.

[0087] In some embodiments, the first terminal device may also send a first data processing request to the computing power device through the first API of the first terminal device without needing to determine the target computing power and the preset computing power threshold or the target computing power and the remaining computing power of the processor with corresponding processing performance.

[0088] It is understood that when the first application is a game application, and the first data to be processed is image data to be rendered, the API called by the game application to send the data processing request can be a graphics API, i.e., the first API is a graphics API. When the first API is a graphics API, the first data processing request can be sent to the GPU of the computing power device through the graphics API. In some embodiments, the first data processing request can be sent to the GPU of the computing power device through the graphics API when it is determined that the target computing power required to process the first data to be processed is greater than a preset computing power threshold, or the target computing power is greater than or equal to the remaining computing power of the GPU of the first terminal device.

[0089] For example, when the first application is a voice assistant application, the first data to be processed can be voice data to be recognized. In this case, the API called to send the data processing request is a neural network API, i.e., the first API is a neural network API. When the first API is a neural network API, the first data processing request can be sent to the NPU of the computing power device through the neural network API. Alternatively, in some embodiments, the first data processing request can be sent to the NPU of the computing power device through the neural network API when it is determined that the target computing power required to process the first data to be processed is greater than a preset computing power threshold, or the target computing power is greater than or equal to the remaining computing power of the NPU of the first terminal device.

[0090] In some embodiments, when the first terminal device (e.g., a smartwatch) has a first communication function (e.g., Bluetooth, StarFlash, etc.) and the computing device has a second communication function (e.g., cellular, Wi-Fi, etc.) but does not have the first communication function, the first terminal device sends a first data processing request to the computing device through the first API of the first terminal device. This may further include: the first terminal device sending a first data processing request to the fourth terminal device (e.g., a mobile phone) through the first API and based on the first communication method corresponding to the first communication function; and the fourth terminal device sending a first data processing request to the second terminal device based on the second communication method corresponding to the second communication function.

[0091] 103: The computing device processes the second data to be processed to obtain the data processing result.

[0092] In some embodiments, after receiving a first data processing request, the computing device can process the second data to be processed to obtain a data processing result.

[0093] For example, when the first application is a game application, the first data to be processed can be the image data to be rendered, and the second data to be processed can be the data obtained after preprocessing the image data to be rendered. After receiving the first data processing request, the computing device can perform image rendering, ray tracing, dynamic diffuse global illumination calculation, and rendering of the second data to be processed to obtain the rendered image data.

[0094] For example, when the first application is a voice assistant application, the first data to be processed can be the voice data to be recognized, and the second data to be processed can be the data obtained after preprocessing the voice data to be recognized. After receiving the first data processing request, the computing device can perform voice recognition processing on the second data to be processed and obtain the voice recognition result.

[0095] In some embodiments, when the computing device is connected to other terminal devices (e.g., third-party terminal devices) with high-performance NPUs and GPUs via Bluetooth, cellular, or WiFi networking, the processing of the second data to be processed by the computing device to obtain the data processing result may further include:

[0096] After receiving the first data processing request, the computing power device can obtain the target computing power required to process the second data to be processed, as well as the remaining computing power of the computing power device. When the remaining computing power of the computing power device cannot meet the target computing power required to process the second data to be processed, for example, when the remaining computing power of the computing power device is less than the computing power required to process the second data to be processed, the computing power device can select any terminal device whose remaining computing power information is greater than the target computing power information from at least one third terminal device connected to the computing power device as the target terminal device.

[0097] Then, the computing power device sends a first data processing request to the target terminal device to process the second data to be processed based on the target terminal device and obtain the data processing result. For example, after the target terminal device processes the second data to be processed and obtains the data processing result, it can send the data processing result back to the computing power device. That is, the data processing result obtained by the computing power device is the data processing result sent by the target terminal device.

[0098] When the remaining computing power of the computing device can meet the target computing power required to process the second data to be processed, for example, when the remaining computing power of the computing device is greater than or equal to the target computing power required to process the second data to be processed, the computing device itself can process the second data to be processed and obtain the data processing result.

[0099] It is understandable that when the data to be processed is data that needs to be processed by the GPU, such as image data to be rendered, the processor corresponding to the processing performance of the data to be processed can refer to the GPU; the remaining computing power of the computing power device can refer to the remaining computing power of the GPU in the computing power device, such as the number of currently idle data processing units in the GPU and the remaining memory in the GPU.

[0100] When the data to be processed is data that requires NPU processing, such as voice data to be recognized, the processor whose processing performance corresponds to the data to be processed can refer to the NPU. The remaining computing power of the computing device can refer to the remaining computing power of the NPU in the computing device, such as the number of currently idle data processing units in the NPU and the remaining memory in the NPU.

[0101] 104: The computing device sends the data processing results to the first terminal device.

[0102] In some embodiments, the computing device processes the second data to be processed based on the first data processing request, and after obtaining the data processing result, it can send the data processing result to the first terminal device.

[0103] For example, when the first application is a game application, after the computing device receives the first data processing request, it can perform image rendering, ray tracing, dynamic diffuse global illumination calculation, and render the image on the second data to be processed, obtain the rendered image data, and send the rendered image data to the first terminal device. The first terminal device then receives the rendered image data and displays it.

[0104] For example, when the first application is a voice assistant application, after the computing device receives the first data processing request, it can perform voice recognition processing on the second data to be processed, obtain the voice recognition result, and send the voice recognition result to the first terminal device. The first terminal device then receives and displays the voice recognition result.

[0105] In some embodiments, when the data processing result is obtained by the target terminal device from the second processed data mentioned in step 102, the computing power device can receive the data processing result sent by the target terminal device and send the data processing result to the first terminal device.

[0106] In some embodiments, when the first terminal device sends a first data processing request to the computing power device through the aforementioned fourth terminal device, the computing power device can send the data processing result to the fourth terminal device, which in turn sends the data processing result back to the first terminal device. In some embodiments, the fourth terminal device may also choose not to send the data processing result to the first terminal device, but instead display the data processing result itself.

[0107] It is understood that, based on the data processing method mentioned in the embodiments of this application, it is possible to execute tasks that require the NPU or GPU of the first terminal device to be processed by the computing power device, such as speech recognition tasks and image rendering tasks. This can avoid the problem of insufficient computing power of the first terminal device causing the first terminal device to run slowly or the data processing speed to be slow, thereby improving the operating efficiency of the first terminal device.

[0108] It is understood that in some embodiments, the first terminal device may also send the first data processing request to the cloud server so that the cloud server can process the first data processing request and obtain the data processing result.

[0109] It is understandable that sending data processing requests to the cloud server for processing involves a long transmission path, wasting device resources. However, the data processing solution based on computing power devices mentioned in this application embodiment can achieve short-distance data transmission at the device side, saving device resources.

[0110] The structure of the first terminal device and the computing power device mentioned in this application will be described below, with the first terminal device being a mobile phone 100 as an example.

[0111] Figure 5 This is a structural diagram of mobile phone 100 and computing device 200.

[0112] like Figure 5 As shown, the mobile phone 100 includes a CPU 101, a GPU 102, an NPU 103, a data preprocessing module 104, an encoder 105, a short-range / long-range communication chip 106, a display subsystem (DDS) 107, and a display driver integrated circuit (DDIC) 108.

[0113] CPU 101 can be used to send data preprocessing requests corresponding to the data to be processed to data preprocessing module 104. For example, CPU 101 can be used to send data preprocessing requests corresponding to image data to be rendered or speech data to be recognized to data preprocessing module 104.

[0114] In some embodiments, the CPU 101 can also be used to send a data processing request corresponding to the voice data to be recognized to the NPU 103, and can also be used to send a data processing request corresponding to the voice data to be recognized to the GPU 102.

[0115] The NPU103 can be used to run corresponding neural network models for data processing based on data processing requests. For example, it can run a speech recognition model to perform speech recognition processing on the speech data to be recognized. The GPU102 can be used to process image data based on data processing requests. For example, it can be used to perform rendering processing on the image data to be rendered.

[0116] The data preprocessing module 104 can be used to preprocess the data to be processed based on a data preprocessing request to obtain preprocessed data. For example, for a data preprocessing request sent by a game application in the operating system corresponding to CPU 101 via a graphics API, the data preprocessing module 104 can perform image noise reduction and other preprocessing to obtain preprocessed image data to be rendered; for a data preprocessing request sent by a voice assistant application via a neural network API, the data preprocessing module 104 can perform audio vectorization and prompt word assistance to obtain preprocessed speech data to be recognized. In some embodiments, the data preprocessing module 104 can also perform preprocessing before transmission, such as data privacy processing, format conversion processing, and compression encoding processing. In some embodiments, the data preprocessing module 104 can also send a data compression encoding request to the encoder 105.

[0117] It is understood that in some embodiments, the data preprocessing module 104 can be any data processing unit with the data preprocessing function mentioned in the embodiments of this application, such as a circuit or chip with data preprocessing function, and this application does not limit it.

[0118] Encoder 105 can compress and encode preprocessed data based on a data compression and encoding request to obtain compressed and encoded data, and can be used to send the data processing request corresponding to the compressed and encoded data to a short-range / long-range communication chip. It can be understood that processing by encoder 105 can reduce the amount of data transmitted, saving device resources. Specifically, the compression and encoding ratio of the data by encoder 105 can be N:1, where N can be any value greater than 1, meaning the encoder can compress the amount of preprocessed data to 1 / N of the original data amount. It can be understood that when the data compression and encoding ratio is N:1, the corresponding decoding ratio is 1:N.

[0119] In some embodiments, the encoder can be based on a data compression algorithm to achieve compression encoding of the preprocessed data by removing redundant and invisible information in the data. In this application embodiment, any implementable algorithm can be used for data compression, and this application does not limit it.

[0120] The short-range communication chip 106 can be used for short-range data transmission communication between the first terminal device and other devices (such as computing devices), including but not limited to Bluetooth, Wi-Fi, near-field communication and other methods.

[0121] The long-distance communication chip 106 can be used for long-distance data transmission communication between computing devices and first terminal devices over a wide area, including but not limited to cellular networks, long-range radio (LoRa), satellite communication, etc.

[0122] The DDS107 can be used to decode compressed data to obtain the decoded data. In addition, when the compressed data is rendered image data, the DDS107 can also be used to perform image processing such as layer overlay and layer compositing to obtain the rendered image, and can send the rendered image to the DDIC108.

[0123] The DDIC108 can be used to control the display screen to show the results of data processing, such as to control the display screen to show rendered images.

[0124] In some embodiments, the operating system of the mobile phone 100 may run on the CPU 101. (Continue to refer to...) Figure 5 The operating system of the mobile phone 100 can include an application layer, an application framework layer, and a kernel layer.

[0125] The application layer can include applications such as games and voice assistants.

[0126] The application framework layer provides application programming interfaces (APIs) for applications within the application layer. This layer can include a graphics API and a neural network API. The graphics API is a dedicated API for applications to send data to the GPU 102; all data transmissions from the application to the GPU 102 require calling the graphics API. The neural network API is a dedicated API for applications to send data to the NPU 103; all data transmissions from the application to the NPU 103 require calling the neural network API. This embodiment does not limit the names of the graphics API and the neural network API. For example, in different devices, the graphics API and the neural network API can be replaced with APIs with different names that perform the same corresponding functions.

[0127] For example, an application can send a corresponding data preprocessing request to the data preprocessing module 104 by calling the graphics API or the neural network API. For example, a game app can call the graphics API to send a data preprocessing request for the image data to be rendered to the data preprocessing module 104, and a voice assistant app can call the neural network API to send a data preprocessing request for the voice data to be recognized to the data preprocessing module 104.

[0128] The kernel layer is the layer between hardware and software, and it contains at least NPU drivers and GPU drivers. The NPU driver can be used to call NPU103 for data processing, and the GPU driver can be used to call GPU102 for data processing.

[0129] The computing power device 200 may include computing power chips, including CPU 201, GPU 202, NPU 203, decoder 204, encoder 205, short-range / long-range communication chip 206, etc.

[0130] CPU 201 can be used to receive data processing requests corresponding to compressed encoded data sent by encoder 105 of mobile phone 100, and send decoding requests to decoder 204. Furthermore, there can be one or more CPUs 201, for example, there can be two CPUs 201.

[0131] Decoder 204 can be used to decode compressed encoded data based on decoding requests, obtain the decoded data, and send the corresponding data processing request to GPU 202. For example, in a game scene, decoder 204 can decode the compressed encoded data corresponding to the preprocessed image data to be rendered at a 1:N ratio, obtain the preprocessed image data to be rendered, and send the corresponding data processing request to GPU 202. For example, in a speech recognition scene, decoder 204 can decode the compressed encoded data corresponding to the preprocessed speech data to be recognized at a 1:N ratio, obtain the preprocessed speech data to be recognized, and send the corresponding data processing request to NPU 203.

[0132] GPU 202 can be used to receive data processing requests sent by decoder 204, process the data, obtain the data processing result, and send the processed result to encoder 205. For example, GPU 202 can perform rendering processing on preprocessed image data to obtain rendered image data. The number of GPUs 202 can be one or more.

[0133] NPU203 can be used to receive data processing requests sent by decoder 204 and process the data to obtain the processing results. For example, NPU203 can run a speech recognition model to recognize the speech data to be recognized and obtain the speech recognition result. There can be one or more NPUs.

[0134] Encoder 205 can be used to encode and compress the results of data processing to obtain compressed encoded data. For example, in a game scene, encoder 205 can compress and encode the rendered image data at an N:1 ratio to obtain compressed encoded data corresponding to the rendered image data. Similarly, in a speech recognition scene, encoder 205 can compress and encode the speech recognition results at an N:1 ratio to obtain compressed encoded data corresponding to the speech recognition results. The value of N can be any value greater than 1.

[0135] Furthermore, encoder 205 can be used to transmit compressed encoded data to short-range / long-range communication chip 207. The encoder can transmit compressed encoded data to short-range / long-range communication chip 207 in any feasible manner. For example, when encoder 205 transmits encoded compressed data to short-range communication chip, it can transmit via dedicated bandwidth using PCI-e, or it can use other methods; this application embodiment does not limit the specific method.

[0136] The short-range communication chip 207 can be used for short-range data transmission communication between computing devices and other devices (such as a first terminal device and a third terminal device), including but not limited to Bluetooth, Wi-Fi, and near-field communication. For example, the short-range communication chip 207 can be used to send data processing results to the short-range communication chip 106 of the first terminal device.

[0137] The long-range communication chip 207 can be used for long-distance data transmission communication between computing devices and other devices (such as a first terminal device and a third terminal device) over a wide area, including but not limited to cellular networks, LoRa, satellite communication, etc. For example, it can be used as a long-range communication chip to send data processing results to the first terminal device.

[0138] It is understandable that the above Figure 5 The illustrated structures of the mobile phone 100 and computing device 200 do not constitute a specific limitation on the mobile phone 100 and computing device 200. In other embodiments of this application, the mobile phone 100 and computing device 200 may include more or fewer components than illustrated, such as a charging interface, a battery, etc., or some components may be combined, some components may be separated, or different components may be arranged. The illustrated components may also be implemented in hardware, software, or a combination of software and hardware, which is not limited in this application.

[0139] The following is in conjunction with the above. Figure 5 The structures of the mobile phone 100 and computing device 200 shown illustrate data processing methods in different scenarios.

[0140] Figure 6 A flowchart illustrating a data processing method based on a game scenario is shown. Figure 6 As shown, the data processing methods include:

[0141] 201: The game APP on mobile phone 100 calls the graphics API to send a preprocessing request corresponding to the image data to be rendered to the data preprocessing module 104.

[0142] In some embodiments, when a game app detects user actions such as moving the game character's position, it can acquire image data to be rendered. In some embodiments, after acquiring the image data, the game app can call a graphics API to send a preprocessing request corresponding to the image data to the data preprocessing module 104. In some embodiments, the preprocessing request corresponding to the image data to be rendered may include the image data to be rendered and instructions for preprocessing the image data.

[0143] In some embodiments, after the game app obtains the image data to be rendered, it can first compare the target computing power required to process the image data to be rendered with the remaining computing power of the GPU 102. If the remaining computing power is greater than or equal to the target computing power required to process the image data to be rendered, the mobile phone 100 itself can process the data to be processed. For example, the game app can send a processing request for the image data to be rendered to the GPU driver by calling the graphics API, and then the GPU driver can send a data processing request so that the GPU 102 can process the image data to be rendered and obtain the rendered image data.

[0144] If the remaining computing power of the mobile phone 100 is less than the target computing power required to process the image data to be processed, it can send a preprocessing request corresponding to the image data to be rendered to the data preprocessing module 104 by calling the graphics API. The data preprocessing module 104 will then perform data preprocessing (such as image noise reduction) to obtain the preprocessed image data to be rendered.

[0145] In some embodiments, after the game app obtains the image data to be rendered, it can first compare the target computing power required for processing the image data with a preset computing power threshold (e.g., 80% of the total computing power of the GPU). If the target computing power is less than the preset computing power threshold, the mobile phone 100 itself can process the data to be processed. For example, the game app can send a processing request for the image data to be rendered to the GPU driver by calling the graphics API, and then the GPU driver sends a data processing request to the GPU 102, so that the GPU 102 processes the image data to be rendered and obtains the rendered image data.

[0146] If the remaining computing power of mobile phone 100 is greater than or equal to the preset computing power threshold, it can send a preprocessing request corresponding to the image data to be rendered to the data preprocessing module 104 by calling the first graphics API. The data preprocessing module 104 will then perform data preprocessing (such as image noise reduction) to obtain the preprocessed image data to be rendered.

[0147] 202: The data preprocessing module 104 preprocesses the image data to be rendered and obtains the preprocessed image data to be rendered.

[0148] In some embodiments, after receiving a data preprocessing request, the data preprocessing module 104 may preprocess the image data to be rendered in response to the preprocessing request and obtain the preprocessed image data to be rendered.

[0149] For example, after receiving a data preprocessing request, the data preprocessing module 104 can perform image preprocessing such as image noise reduction on the image data to be rendered, and can also perform pre-transmission preprocessing such as data privacy processing and format conversion processing to obtain the preprocessed image data to be rendered. It is understood that the above preprocessing methods are only illustrative examples, and other preprocessing methods may be included depending on the data to be processed, such as image enhancement and image filtering, which are not limited in this application.

[0150] 203: The data preprocessing module 104 sends a data compression encoding request to the encoder 105.

[0151] In some embodiments, after obtaining the preprocessed image data to be rendered, the data preprocessing module 104 may send a data compression encoding request to the encoder 105.

[0152] The data compression encoding request includes preprocessed image data to be rendered and instructions for compressing and encoding the preprocessed image data to be rendered.

[0153] 204: Encoder 105 performs compression encoding on the preprocessed image data to be rendered, and obtains the compressed encoded data corresponding to the preprocessed image data to be rendered.

[0154] In some embodiments, after receiving a data compression encoding request, the encoder 105 can perform compression encoding on the preprocessed image data to be rendered at a ratio of N:1 (e.g., 5:1) to obtain the compressed encoded data corresponding to the preprocessed image data to be rendered.

[0155] 205: Encoder 105 sends a data processing request to short-range / long-range communication chip 106.

[0156] In some embodiments, after the encoder 105 obtains the compressed encoded data corresponding to the preprocessed image data to be rendered, it can send a data processing request to the short-range / long-range communication chip 106.

[0157] The data processing request includes preprocessed image data to be rendered and instructions for processing the preprocessed image data to be rendered.

[0158] 206: Short-range / long-range communication chip 106 sends a data processing request to short-range / long-range communication chip 206.

[0159] In some embodiments, after receiving a data processing request, the short-range / long-range communication chip 106 of the mobile phone 100 can send a data processing request to the short-range / long-range communication chip 206 of the computing device 200.

[0160] 207: Short-range / long-range communication chip 206 sends a data processing request to CPU 201.

[0161] In some embodiments, after receiving a data processing request, the short-range / long-range communication chip 206 can send a data processing request to the CPU 201.

[0162] 208: CPU201 sends a decoding request to decoder204.

[0163] In some embodiments, after receiving a data processing request, the CPU 201 may send a decoding request to the decoder.

[0164] The decoding request includes compressed encoded data corresponding to the preprocessed image data to be rendered, as well as instructions for decoding the compressed encoded data corresponding to the preprocessed image data to be rendered.

[0165] 209: Decoder 204 decodes the compressed encoded data corresponding to the preprocessed image data to be rendered, and obtains the preprocessed image data to be rendered.

[0166] In some embodiments, after receiving a decoding request, the decoder 204 decodes the compressed encoded data corresponding to the preprocessed image data to be rendered to obtain the preprocessed image data to be rendered.

[0167] For example, in some embodiments, after receiving a decoding request, the decoder 204 can decode the compressed and encoded image data to be rendered at a ratio of 1:N (e.g., 1:5) to obtain the preprocessed image data to be rendered.

[0168] 210: Decoder 204 sends a data processing request to GPU 202.

[0169] In some embodiments, after obtaining the preprocessed image data to be rendered, the decoder 204 may send a data processing request to the GPU 202.

[0170] The data processing request includes the preprocessed image data to be rendered and instructions for processing the preprocessed image data.

[0171] 211: GPU202 processes the preprocessed image data to obtain the rendered image data.

[0172] In some embodiments, after receiving a data processing request, GPU 202 performs data processing on the image data to be rendered and obtains the rendered image data.

[0173] For example, in a game scene, after receiving a data processing request, GPU202 performs image rendering, ray tracing, dynamic diffuse global illumination calculation, and rendering of the image data to be rendered, thereby obtaining the rendered image data.

[0174] 212: GPU202 sends a request for data compression encoding to encoder 205.

[0175] In some embodiments, after obtaining the rendered image data, the GPU 202 may send a data compression encoding request to the encoder 205.

[0176] The data compression encoding request includes the rendered image data and instructions for compressing and encoding the rendered image data.

[0177] 213: Encoder 205 performs compression encoding on the rendered image data to obtain the compressed encoded data corresponding to the rendered image data.

[0178] In some embodiments, after receiving a data compression encoding request, the encoder 205 can perform compression encoding on the rendered image data at a ratio of N:1 to obtain the compressed encoded data corresponding to the rendered image data.

[0179] 214: GPU202 sends the compressed encoded data corresponding to the rendered image data to short-range / long-range communication chip206.

[0180] In some embodiments, after acquiring the compressed encoded data corresponding to the rendered image data, the GPU 202 can send the compressed encoded data corresponding to the rendered image data to the short-range or long-range communication chip 206.

[0181] 215: The short-range / long-range communication chip 206 sends the compressed encoded data corresponding to the rendered image data to the short-range / long-range communication chip 106.

[0182] In some embodiments, after receiving the compressed encoded data corresponding to the rendered image data, the short-range / long-range communication chip 206 of the computing device 200 can send the compressed encoded data corresponding to the rendered image data to the short-range / long-range communication chip 106 of the mobile phone 100.

[0183] 216: Short-range / long-range communication chip 106 sends a decoding request to DDS107.

[0184] In some embodiments, after receiving the compressed encoded data corresponding to the rendered image data, the short-range / long-range communication chip 106 can send a decoding request to the DDS 107.

[0185] The decoding request includes compressed encoded data corresponding to the rendered image data and instructions for decoding the compressed encoded data corresponding to the rendered image data.

[0186] 217: The DDS107 decodes the compressed encoded data corresponding to the rendered image data and performs layer compositing to obtain the rendered image.

[0187] In some embodiments, after receiving a decoding request, DDS107 can decode the compressed encoded data corresponding to the rendered image data at a ratio of 1:N (e.g., 1:5) to obtain the decoded rendered image data, and can perform layer compositing and other processing on the rendered image data to obtain the final rendered image.

[0188] 218: DDS107 sends the rendered image to DDIC108.

[0189] After the DDS107 obtains the rendered image, it can send the rendered image to the DDIC108.

[0190] After acquiring a rendered image, the DDIC108 can control the display screen to show that rendered image. For example, in a game scene, after receiving the rendered image, the DDIC108 can control the display screen to show that rendered image.

[0191] Understandable, based on Figure 6 The data processing method shown can enable tasks in game scenes, such as image rendering tasks, based on computing power devices. It can avoid the problem of insufficient computing power of the first terminal device (such as mobile phone 100) causing the first terminal device to run slowly, and improve the operating efficiency of the first terminal device.

[0192] It is understandable that in some comparative embodiments, to address the aforementioned issue of insufficient computing power on terminal devices, a cloud gaming solution is generally adopted. This allows users to directly log into their cloud gaming accounts, with the entire game running on a cloud server. However, this solution requires users to continuously pay monthly fees, and it is only applicable to specific games. In contrast, the solution mentioned in this application, which utilizes computing power devices to perform certain tasks in the game scene, such as image rendering, not only compensates for the insufficient computing power of terminal devices but also eliminates the need for users to pay monthly fees and is applicable to all games.

[0193] Figure 7 A flowchart illustrating a data processing method for a speech recognition scenario according to this application is shown. Figure 7 As shown, the method includes:

[0194] 301: The voice assistant APP of mobile phone 100 calls the neural network API to send the preprocessing request corresponding to the voice data to be recognized to the data preprocessing module 104.

[0195] In some embodiments, when a voice assistant app detects user-input voice data, it can acquire the user-input voice data, i.e., the voice data to be recognized. In some embodiments, after acquiring the voice data to be recognized, the voice assistant app can call a neural network API to send a preprocessing request corresponding to the voice data to be recognized to the data preprocessing module 104. In some embodiments, the preprocessing request corresponding to the voice data to be recognized may include the voice data to be recognized and instructions for preprocessing the voice data to be recognized.

[0196] In some embodiments, after the voice assistant APP obtains the voice data to be recognized, it can first compare the target computing power required to process the voice data to be recognized with the remaining computing power of the NPU 103. If the remaining computing power is greater than or equal to the target computing power required to process the voice data to be recognized, the mobile phone 100 itself can process the voice data to be recognized. For example, the voice assistant APP can send a data processing request corresponding to the voice data to be recognized to the NPU driver by calling the neural network API, and then the NPU driver sends a data processing request corresponding to the voice data to be recognized to the NPU 103, so that the NPU processes the voice data to be recognized and obtains the voice recognition result.

[0197] If the remaining computing power of the mobile phone 100 is less than the target computing power required to process the voice data to be recognized, it can send a preprocessing request corresponding to the voice data to be recognized to the data preprocessing module 104 by calling the first neural network API. The data preprocessing module 104 will then perform data preprocessing (such as audio vectorization processing, data privacy processing, prompt word assistance, etc.) to obtain the preprocessed data.

[0198] In some embodiments, after the voice assistant APP obtains the voice data to be recognized, it can first compare the target computing power required for processing the voice data to be recognized with a preset computing power threshold (e.g., 80% of the total computing power of the GPU). If the target computing power is less than the preset computing power threshold, the mobile phone 100 itself can process the data to be processed. For example, the voice assistant APP can send a processing request for the voice data to be recognized to the NPU driver by calling the neural network API, and then the NPU driver sends a data processing request corresponding to the voice data to be recognized to the NPU 103, so that the NPU processes the voice data to be recognized and obtains the voice recognition result.

[0199] If the target computing power of the mobile phone 100 is greater than or equal to the preset computing power threshold, it can send a preprocessing request corresponding to the voice data to be recognized to the data preprocessing module 104 by calling the first neural network API. The data preprocessing module 104 will then perform data preprocessing (such as audio vectorization processing, data privacy processing, prompt word assistance, etc.) to obtain the preprocessed data.

[0200] 302: The data preprocessing module 104 preprocesses the speech data to be recognized based on the preprocessing request corresponding to the speech data to be recognized, and obtains the preprocessed speech data to be recognized.

[0201] In some embodiments, after receiving a preprocessing request corresponding to the speech data to be recognized, the data preprocessing module 104 can preprocess the speech data to be recognized based on the preprocessing request to obtain the preprocessed speech data to be recognized.

[0202] For example, after receiving a preprocessing request, the data preprocessing module 104 can perform preprocessing on the speech data to be recognized, such as audio vectorization, privacy processing, and prompt word assistance. It can also perform pre-transmission preprocessing such as privacy processing and format conversion to obtain the preprocessed speech data to be recognized.

[0203] 303: The data preprocessing module 104 sends a data compression encoding request to the encoder 105.

[0204] In some embodiments, after obtaining the preprocessed speech data to be recognized, the data preprocessing module 104 may send a data compression encoding request to the encoder 105.

[0205] The data compression encoding request includes the preprocessed speech data to be recognized and the instructions for compressing and encoding the preprocessed speech data to be recognized.

[0206] 304: Encoder 105 performs compression encoding on the preprocessed speech data to be recognized, and obtains the compressed encoded data corresponding to the preprocessed speech data to be recognized.

[0207] In some embodiments, after receiving a data compression encoding request, the encoder 105 can perform compression encoding on the preprocessed speech data to be recognized at a ratio of N:1 to obtain compressed encoded data corresponding to the preprocessed speech data to be recognized.

[0208] 305: Encoder 105 sends a data processing request to short-range / long-range communication chip 106.

[0209] In some embodiments, after the encoder 105 obtains the compressed encoded data corresponding to the preprocessed voice data to be recognized, it can send a data processing request to the short-range / long-range communication chip 106.

[0210] The data processing request includes compressed coded data corresponding to the preprocessed speech data to be recognized, as well as instructions for performing data compression and encoding processing on the compressed coded data corresponding to the preprocessed speech data to be recognized.

[0211] 306: Short-range / long-range communication chip 106 sends a data processing request to short-range / long-range communication chip 206.

[0212] In some embodiments, after receiving a data processing request, the short-range / long-range communication chip 106 can send a data processing request to the short-range / long-range communication chip 206.

[0213] 307: Short-range / long-range communication chip 206 sends a data processing request to CPU 201.

[0214] In some embodiments, after receiving a data processing request, the short-range / long-range communication chip 206 can send a voice data processing request to the CPU 201.

[0215] 308: CPU201 sends a decoding request to decoder204.

[0216] In some embodiments, after receiving a data processing request, the CPU 201 may send a decoding request to the decoder 204.

[0217] The decoding request includes the compressed encoded data corresponding to the preprocessed speech data to be recognized, as well as the instruction to decode the compressed encoded data corresponding to the preprocessed speech data to be recognized.

[0218] 309: Decoder 204 decodes the compressed encoded data corresponding to the preprocessed speech data to be recognized to obtain the preprocessed speech data to be recognized.

[0219] In some embodiments, after receiving a decoding request, the decoder 204 decodes the compressed encoded data corresponding to the preprocessed speech data to be recognized to obtain the decoded speech data to be recognized.

[0220] For example, in some embodiments, after receiving a decoding request, the decoder 204 can decode the compressed encoded data corresponding to the preprocessed speech data to be recognized at a ratio of 1:N to obtain the preprocessed speech data to be recognized.

[0221] 310: Decoder 204 sends a data processing request to NPU 203.

[0222] In some embodiments, after obtaining the preprocessed speech data to be recognized, the decoder 204 may send a data processing request to the NPU 203.

[0223] The data processing request includes the pre-processed speech data to be recognized and instructions for processing the pre-processed speech data.

[0224] 311: The NPU203 processes the preprocessed speech data to obtain the speech recognition results.

[0225] In some embodiments, after receiving a data processing request, the NPU203 processes the preprocessed speech data to be recognized to obtain a speech recognition result. For example, the speech recognition result can be the text corresponding to the user's input speech.

[0226] 312: NPU203 sends a data compression encoding request to encoder 205.

[0227] In some embodiments, after obtaining the speech recognition result, the NPU203 can send a data compression encoding request to the encoder205.

[0228] The data compression encoding request includes the speech recognition results and instructions for compressing and encoding the speech recognition results.

[0229] 313: Encoder 205 performs compression encoding on the speech recognition results to obtain the compressed encoded data corresponding to the speech recognition results.

[0230] In some embodiments, after receiving a data compression encoding request, the encoder 205 can compress and encode the speech recognition results at a ratio of N:1 to obtain compressed and encoded data corresponding to the speech recognition results.

[0231] 314: NPU203 sends compressed encoded data corresponding to the speech recognition result to short-range / long-range communication chip 206.

[0232] In some embodiments, after acquiring the compressed coded data corresponding to the speech recognition result, the NPU203 can send the compressed coded data corresponding to the speech recognition result to the short-range or long-range communication chip 207.

[0233] 315: Short-range / long-range communication chip 206 sends compressed encoded data corresponding to the speech recognition result to short-range / long-range communication chip 106.

[0234] In some embodiments, after receiving the compressed coded data corresponding to the speech recognition result, the short-range / long-range communication chip 206 can send the compressed coded data corresponding to the speech recognition result to the short-range / long-range communication chip 106.

[0235] 316: Short-range / long-range communication chip 106 sends a decoding request to DDS107.

[0236] In some embodiments, after receiving the compressed encoded data corresponding to the speech recognition result, the short-range / long-range communication chip 106 can send a decoding request to the DDS 107.

[0237] The decoding request includes the compressed encoded data corresponding to the speech recognition result and the instruction to decode the compressed encoded data corresponding to the speech recognition result.

[0238] 317: The DDS107 decodes the compressed encoded data corresponding to the speech recognition result to obtain the decoded speech recognition result.

[0239] In some embodiments, after receiving a decoding request, the DDS107 can decode the compressed encoded data corresponding to the speech recognition result to obtain the decoded speech recognition result.

[0240] For example, in some embodiments, after receiving a decoding request, DDS107 can decode the compressed encoded data corresponding to the speech recognition result at a ratio of 1:N to obtain the decoded speech recognition result.

[0241] 318: DDS107 sends the speech recognition results to DDIC108.

[0242] In some embodiments, after obtaining the speech recognition result, DDS107 can send the speech recognition result to DDIC108. After receiving the speech recognition result, DDIC108 can control the display screen to display the speech recognition result.

[0243] Understandable, based on Figure 7 The data processing method shown can enable the execution of tasks that require NPU processing of the first terminal device, such as speech recognition, based on the computing power of the device. This can avoid the problem of slow data processing speed of the first terminal device due to insufficient computing power, and improve the operating efficiency of the first terminal device.

[0244] It is understandable that in some comparative embodiments, in order to solve the problem of insufficient NPU computing power in terminal devices, neural network models are generally pruned before being deployed in the terminal devices. However, the pruned models have lower accuracy, resulting in lower accuracy of data processing results. In the embodiments of this application, the task that requires the NPU203 to run the corresponding neural network model for processing, such as speech recognition, is executed by the computing power device. This avoids the problem of the first terminal device running slowly due to insufficient computing power, improves the operating efficiency of the first terminal device, and ensures the accuracy of data processing results.

[0245] The following is combined with Figure 8 The hardware structure of the first terminal device mentioned in the embodiments of this application will be described using mobile phone 100 as an example.

[0246] like Figure 8 As shown, the mobile phone 100 may include a processor 110, a power module 140, a memory 180, a mobile communication module 130, a wireless communication module 120, a sensor module 190, an audio module 150, a camera 170, an interface module 160, buttons 1010, and a display screen 1020, etc.

[0247] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the mobile phone 100. In other embodiments of this application, the mobile phone 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0248] Processor 110 may include one or more processing units, such as processing modules or circuits of CPU, GPU, NPU, micro-programmed control unit (MCU), artificial intelligence (AI) processor, or field-programmable gate array (FPGA). Different processing units may be independent devices or integrated into one or more processors. Processor 110 may include storage units for storing instructions and data. In some embodiments, the storage unit in processor 110 is a cache memory 180. The processor can be used to execute the data processing methods mentioned in the embodiments of this application.

[0249] The power module 140 may include a power supply, a power management component, etc. The power supply may be a battery. The power management component manages the charging of the power supply and the power supply to other modules. In some embodiments, the power management component includes a charging management module and a power management module. The charging management module receives charging input from a charger; the power management module connects to the power supply and the processor 110. The power management module receives input from the power supply and / or the charging management module to supply power to the processor 110, the display 1020, the camera 170, and the wireless communication module 120, etc.

[0250] The mobile communication module 130 may include, but is not limited to, an antenna, a power amplifier, a filter, and an LNA (low noise amplifier). The mobile communication module 130 can provide wireless communication solutions, including 2G / 3G / 4G / 5G, for use on the mobile phone 100. The mobile communication module 130 can receive electromagnetic waves via the antenna, filter and amplify the received electromagnetic waves, and then transmit them to a modem processor for demodulation. The mobile communication module 130 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via the antenna. In some embodiments, at least some functional modules of the mobile communication module 130 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 130 and at least some modules of the processor 110 may be housed in the same device.

[0251] The wireless communication module 120 may include an antenna, which enables the transmission and reception of electromagnetic waves. The wireless communication module 120 can provide solutions for wireless communication applications on the mobile phone 100, including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The mobile phone 100 can communicate with networks and other devices through wireless communication technologies.

[0252] In some embodiments, the mobile communication module 130 and the wireless communication module 120 of the mobile phone 100 may be located in the long-range communication chip or the short-range communication chip mentioned above.

[0253] The display screen 1020 is used to display human-computer interaction interfaces, images, videos, etc. The display screen 1020 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a quantum dot light-emitting diode (QLED), etc.

[0254] This application provides a computer-readable storage medium storing instructions that, when executed on an electronic device, cause the electronic device to perform the data processing method mentioned in this application.

[0255] This application provides an electronic device, including a memory for storing instructions executed by one or more processors of the electronic device, and one or more processors for executing the data processing methods mentioned in the embodiments of this application.

[0256] This application provides a computer program product, including a computer program / instructions, which, when executed, cause a computer to perform the data processing method mentioned in this application.

[0257] This application provides a chip, which includes a memory for storing instructions to be executed by one or more processors of an electronic device, and one or more processors for executing the data processing methods mentioned in this application.

[0258] The embodiments disclosed in this application can be implemented in hardware, software, firmware, or a combination of these implementation methods. Embodiments of this application can be implemented as computer programs or program code executable on a programmable system, the programmable system including at least one processor, a storage system (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device.

[0259] Program code can be applied to input instructions to execute the functions described in this application and generate output information. The output information can be applied to one or more output devices in a known manner. For the purposes of this application, the processing system includes any system having a processor such as, for example, a digital signal processor (DSP), a microcontroller, an application-specific integrated circuit (ASIC), or a microprocessor.

[0260] The program code can be implemented using a high-level procedural language or an object-oriented programming language to communicate with the processing system. Assembly language or machine language can also be used when needed. In fact, the mechanisms described in this application are not limited to any particular programming language. In either case, the language can be a compiled language or an interpreted language.

[0261] In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried or stored thereon on one or more temporary or non-temporary machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. For example, the instructions may be distributed via a network or through other computer-readable media. Therefore, machine-readable media may include any mechanism for storing or transmitting information in a machine-readable (e.g., computer-readable) form, including but not limited to floppy disks, optical disks, optical discs, read-only memory, magneto-optical disks, random access memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, magnetic cards or optical cards, flash memory, or tangible machine-readable storage for transmitting information (e.g., carrier waves, infrared signals, digital signals, etc.) using the Internet in the form of electrical, optical, acoustic, or other propagation signals. Therefore, machine-readable media include any type of machine-readable medium suitable for storing or transmitting electronic instructions or information in a machine-readable (e.g., computer-readable) form.

[0262] In the accompanying drawings, some structural or methodological features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be necessary. Rather, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. Furthermore, the inclusion of structural or methodological features in a particular figure does not imply that such features are required in all embodiments, and in some embodiments, these features may be omitted or may be combined with other features.

[0263] It should be noted that all units / modules mentioned in the device embodiments of this application are logical units / modules. Physically, a logical unit / module can be a physical unit / module, a part of a physical unit / module, or a combination of multiple physical units / modules. The physical implementation of these logical units / modules themselves is not the most important factor; the combination of functions implemented by these logical units / modules is the key to solving the technical problems proposed in this application. Furthermore, to highlight the innovative aspects of this application, the above-described device embodiments of this application have not introduced units / modules that are not closely related to solving the technical problems proposed in this application. This does not mean that the above-described device embodiments do not contain other units / modules.

[0264] It should be noted that in the examples and description of this patent, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0265] Although this application has been illustrated and described with reference to certain preferred embodiments thereof, those skilled in the art will understand that various changes in form and detail may be made thereto without departing from the scope of this application.

Claims

1. A data processing method, characterized in that, include: The first terminal device detects the first data to be processed by the first application, and obtains the second data to be processed based on the first data to be processed, which corresponds to the processing performance of the second terminal device. The first terminal device sends a first data processing request to the second terminal device through the first API of the first terminal device, wherein the first data processing request includes the second data to be processed; The second terminal device processes the second data to be processed to obtain the data processing result; The second terminal device sends the data processing result to the first terminal device.

2. The data processing method according to claim 1, characterized in that, The first terminal device includes a first NPU and a first GPU, and the second terminal device includes a second NPU and a second GPU; the computing power of the first NPU is less than the computing power of the second NPU, and the computing power of the first GPU is less than the computing power of the second GPU. The processing performance of the second terminal device includes the processing performance of the second NPU and the processing performance of the second GPU.

3. The data processing method according to claim 2, characterized in that, The first API corresponds to the graphics API. The first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: The first terminal device communicates with the second GPU of the second terminal device through the first API of the first terminal device. hair Send the first data processing request; The second terminal device processes the second data to be processed to obtain a data processing result, including: The second GPU processes the second data to be processed based on the first data processing request to obtain the data processing result.

4. The data processing method according to claim 2, characterized in that, The first API corresponds to the neural network API. The first terminal device sends a first processing data request to the second terminal device through the first API of the first terminal device, including: the first terminal device sends a first processing data request to the second NPU through the first API of the first terminal device; The second terminal device processes the second data to be processed to obtain a data processing result, including: The second NPU processes the second data to be processed based on the first data processing request to obtain the data processing result.

5. The data processing method according to any one of claims 2-4, characterized in that, The second terminal device is an independent computing device.

6. The data processing method according to any one of claims 2-4, characterized in that, The second terminal device is an integrated device that integrates the second NPU and the second GPU in the terminal device.

7. The data processing method according to claim 6, characterized in that, The second terminal device includes one or more second NPUs and one or more second GPUs.

8. The data processing method according to any one of claims 1-7, characterized in that, The first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: If the computing power required to process the first data to be processed is greater than a preset computing power threshold, the first terminal device sends the first data processing request to the second terminal device through the first API of the first terminal device.

9. The data processing method according to any one of claims 1-2, characterized in that, The second terminal device processes the second data to be processed to obtain a data processing result, including: The second terminal device acquires the computing power information of the at least one third terminal device with which it has established a connection. The second terminal device determines the target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device; The second terminal device sends the first data processing request to the target terminal device; The second terminal device receives the data processing result sent by the target terminal device, wherein the data processing result is obtained by the target terminal device processing the second data to be processed based on the first data processing request.

10. The data processing method according to claim 9, characterized in that, The second terminal device acquires the computing power information of the at least one third terminal device with which it has established a connection, including: The second terminal device acquires the remaining computing power of the at least one third terminal device that has established a connection with the second terminal device; The second terminal device determines the target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device, including: The second terminal device takes any terminal device among the at least one third terminal device whose remaining computing power is greater than the target computing power as the target terminal device, wherein the target computing power is the computing power required to process the second data to be processed.

11. The data processing method according to claim 9 or 10, characterized in that, The second terminal device determines the target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device, including: When the remaining computing power of the second terminal device is insufficient to meet the target computing power required to process the second data to be processed, the second terminal device determines the target terminal device from the at least one third terminal device based on the computing power information of the at least one third terminal device.

12. The data processing method according to claim 1, characterized in that, The first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: Corresponding to the first terminal device having a first communication function, the computing power device having a second communication function, the first terminal device sends the first data processing request to the fourth terminal device through the first API and based on the first communication method corresponding to the first communication function; The fourth terminal device sends the first data processing request to the second terminal device based on the second communication method corresponding to the second communication function.

13. The data processing method according to claim 12, characterized in that, The first communication method is a first short-range communication method, and the second communication method is a long-range wireless communication method or a second short-range communication method.

14. The data processing method according to any one of claims 1-13, characterized in that, The first terminal device includes a preprocessing module; The first terminal device sends a first data processing request to the second terminal device through a first API of the first terminal device, including: The first application sends a data preprocessing request to the preprocessing module through the first API, and the data preprocessing request includes the first data to be processed; The preprocessing module preprocesses the first data to be processed based on the data preprocessing request to obtain the second data to be processed; The preprocessing module sends the first data processing request to the second electronic device.

15. The data processing method according to claim 14, characterized in that, Corresponding to the first API being a graphics API, the data preprocessing module preprocesses the first data to be processed based on the data preprocessing request, including: the preprocessing module performs image denoising processing on the first data to be processed based on the data preprocessing request.

16. The data processing method according to claim 14, characterized in that, Corresponding to the first API being a neural network API, the preprocessing module preprocesses the first data to be processed based on the data preprocessing request, including: the preprocessing module performs at least one of audio vectorization processing and prompt word auxiliary processing on the first data to be processed based on the data preprocessing request.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores instructions that, when executed on an electronic device, cause the electronic device to perform the data processing method according to any one of claims 1 to 16.

18. An electronic device, characterized in that, include: A memory for storing instructions executed by one or more processors of an electronic device, and said one or more processors for performing the data processing method according to any one of claims 1 to 16.