Multi-module parallel accelerated image processing method, system and platform suitable for GPU (Graphics Processing Unit)

By introducing multi-module parallel acceleration and performance analysis optimization modules into the GPU acceleration system, the problem of single acceleration methods and lack of performance analysis and optimization in the existing technology is solved, and the goal of significantly improving GPU performance and acceleration effects is achieved.

CN119478168AActive Publication Date: 2025-02-18SHENZHEN LONGXINWEI SEMICON TECH CO LTD
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
CN202411475172.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-22
Publication Date
2025-02-18
Estimated Expiration
2044-10-22

AI Technical Summary

Technical Problem

The existing GPU acceleration system has a single acceleration method, which cannot significantly improve GPU performance, and lacks performance analysis and optimization modules, so it is impossible to detect and adjust acceleration strategies in real time.

Method used

Design a multi-module parallel acceleration image processing method, system and platform suitable for GPU, including data automatic acquisition module, GPU self-detection module, code optimization processing module, data parallelization processing module and performance analysis optimization module to realize multi-module parallelism Acceleration and performance analysis and optimization.

Benefits of technology

Through the collaborative work of multiple modules, the performance and acceleration effect of GPU are significantly improved, the stability and effectiveness of GPU acceleration are ensured, and the application potential of the system in the fields of high-performance computing, big data processing and artificial intelligence are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119478168A_ABST
    Figure CN119478168A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-module parallel image acceleration processing method, system and platform suitable for a GPU (Graphics Processing Unit) and a storage medium, and the method comprises the steps: obtaining first information data corresponding to the GPU, detecting the operation performance of the GPU in real time based on the first information data, and generating corresponding second information data; according to the second information data, performing real-time optimization processing on operation performance corresponding to the GPU, and generating corresponding third information data; on the basis of the GPU, in combination with the third information data, multi-module parallel acceleration processing and rendering of to-be-processed image data, a corresponding system, a platform and a storage medium, synchronous work of multiple acceleration modules is achieved, and the GPU performance is remarkably improved; the detection and optimization capability is improved, the acceleration effect is detected and further optimization is carried out through a performance analysis optimization module, and the effectiveness and stability of GPU acceleration are ensured; the actual application effect is enhanced, and the effect and performance in actual application are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of GPU image processing, and in particular relates to a multi-module parallel accelerated image processing method, system and platform suitable for GPU. Background Art

[0002] GPU (Graphics Processing Unit) is a microprocessor dedicated to image and graphics processing on personal computers, workstations, game consoles and mobile devices. It reduces the dependence on the central processing unit (CPU) and specializes in processing image and graphics tasks originally handled by the CPU. In terms of 3D graphics processing, GPU uses core technologies such as hardware T&L (Transformation and Lighting), cubic environment material mapping, vertex blending, texture compression and bump mapping, which significantly improves the efficiency and quality of image rendering.

[0003] As computing demands continue to increase, GPU performance improvement has become a research focus. In order to improve the processing power of GPUs, existing GPU acceleration systems have been optimized in many ways, such as the design of parallel computing architectures, the application of hardware acceleration technology, and the optimization of software algorithms. However, the current GPU acceleration system still has some shortcomings in achieving performance improvement. For example, the acceleration methods in existing technologies are often single and lack multi-dimensional performance optimization methods, resulting in insufficient acceleration effects.

[0004] In addition, many existing systems lack effective performance analysis and optimization modules, making it difficult to detect and adjust acceleration strategies in real time, limiting further improvements in the overall system performance.

[0005] At present, although the performance of GPU has been improved to a certain extent, its acceleration method is still relatively simple, and it fails to give full play to the parallel processing advantages of GPU. In addition, it has not integrated efficient performance analysis and optimization modules, and cannot monitor and dynamically adjust the acceleration effect in real time. These problems limit the application potential of GPU acceleration systems in high-performance computing, big data processing, artificial intelligence and other fields.

[0006] In other words, there are the following technical problems and defects: the existing acceleration method is single: the existing GPU acceleration system has limited acceleration methods and cannot significantly improve GPU performance. Lack of performance analysis and optimization module: the performance of the accelerated GPU cannot be detected and optimized, which affects the actual application effect of the overall system.

[0007] Therefore, in view of the above technical problems and defects, it is urgent to design and develop a multi-module parallel accelerated image processing method, system and platform suitable for GPU. Summary of the invention

[0008] In order to overcome the shortcomings and difficulties of the above-mentioned prior art, the purpose of the present invention is to solve the problem that the current existing acceleration method is single and lacks a performance analysis and optimization module, and to provide a multi-module parallel acceleration image processing method, system, platform and storage medium suitable for GPU to achieve multi-module parallel acceleration: introduce data automatic acquisition module, GPU self-detection module, code optimization processing module, data parallel processing module and performance analysis and optimization module, and accelerate GPU synchronously in multiple modes. Performance analysis and optimization: add a performance analysis and optimization module to analyze the performance of the accelerated GPU, and further optimize the acceleration process according to the results to ensure the stability and effectiveness of the GPU acceleration effect.

[0009] The first object of the present invention is to provide a multi-module parallel accelerated image processing method suitable for GPU; the second object of the present invention is to provide a multi-module parallel accelerated image processing system suitable for GPU; the third object of the present invention is to provide a multi-module parallel accelerated image processing platform suitable for GPU; the fourth object of the present invention is to provide a computer-readable storage medium.

[0010] The first object of the present invention is achieved in that the method comprises the following steps: Acquire first information data corresponding to the GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; According to the second information data, the operation performance corresponding to the GPU is optimized in real time, and corresponding third information data is generated; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; Based on the GPU and in combination with the third information data, multiple modules accelerate the processing and rendering of the image data to be processed in parallel.

[0011] Further, the acquiring of first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data also includes: Generate and obtain model data, architecture data corresponding to the GPU, and data on tasks that the GPU currently needs to accelerate; Real-time detection of the working environment data corresponding to the GPU, and monitoring of the power consumption status data corresponding to the GPU; Generate and obtain operation status information data corresponding to the GPU; wherein the operation status information data includes GPUD usage data and memory occupancy data.

[0012] Further, the acquiring of first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data also includes: Detecting performance indicator data to be detected corresponding to the GPU, and generating first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing performance, memory capacity, video memory bit width, GPU power consumption, GPU operating frequency and video memory type corresponding to the GPU; Based on the first detection data, determine whether the performance indicator data corresponding to the GPU reaches the preset standard data, if so, execute the next step; otherwise, continue to perform self-detection.

[0013] Furthermore, the real-time optimization and processing of the operating performance corresponding to the GPU according to the second information data, and the generation of corresponding third information data, also includes: Based on the second information data, first code data corresponding to the first information data is generated and acquired, the first code data is optimized and processed, and second code data corresponding to the first information data is generated, wherein the first code data is code data to be optimized; and the second code data is optimized code data; Based on the second information data, a first data set corresponding to the first information data is generated and acquired, and the first data set is divided and processed, and a second data set corresponding to the first information data is generated, wherein the first data set is the current data set data of the GPU; and the second data set is a sub-data set corresponding to the first data set.

[0014] Furthermore, the real-time optimization and processing of the operating performance corresponding to the GPU according to the second information data, and the generation of corresponding third information data, also includes: Generate and obtain state data corresponding to the GPU, and allocate and process a second data set corresponding to the first information data; Based on the state data corresponding to the GPU, parallel computing is performed to process a second data set corresponding to the GPU.

[0015] Furthermore, based on the GPU and in combination with the third information data, the multi-module parallel accelerated processing and rendering of the image data to be processed also includes: Combined with performance analysis tools, real-time estimation and generation of performance data corresponding to the GPU, and generation of corresponding evaluation reports based on the performance data; Based on the performance data and the evaluation report, the code data and the model data corresponding to the GPU are optimized and adjusted respectively.

[0016] The second object of the present invention is achieved in this way: the system is used to implement the multi-module parallel accelerated image processing method suitable for GPU, and the system includes: A data acquisition and generation unit, used to acquire first information data corresponding to the GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; A data parallel processing unit, configured to optimize and process the operation performance corresponding to the GPU in real time according to the second information data, and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; The image acceleration processing unit is used for accelerating the processing and rendering of the image data to be processed in parallel using multiple modules based on the GPU and in combination with the third information data.

[0017] Furthermore, the data acquisition generation unit further includes: A first data generation module is used to generate and obtain model data and architecture data corresponding to the GPU, as well as data of tasks that the GPU currently needs to accelerate; A data monitoring and processing module, used to detect the working environment data corresponding to the GPU in real time, and monitor the power consumption state data corresponding to the GPU; A second data generation module is used to generate and obtain operation status information data corresponding to the GPU; wherein the operation status information data includes the usage rate data and memory occupancy data of the GPUD; And / or, the data acquisition generation unit further includes: a third data generating module, configured to detect the performance indicator data to be detected corresponding to the GPU, and generate first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing operation performance, memory capacity, video memory bit width, GPU power consumption, GPU operation frequency and video memory type corresponding to the GPU; A first data determination module, configured to determine whether performance indicator data corresponding to the GPU reaches preset standard data based on the first detection data; And / or, the data parallel processing unit further includes: a fourth data generating module, configured to generate and obtain first code data corresponding to the first information data based on the second information data, optimize the first code data, and generate second code data corresponding to the first information data, wherein the first code data is code data to be optimized; and the second code data is optimized code data; a fifth data generation module, configured to generate and obtain a first data set corresponding to the first information data based on the second information data, divide and process the first data set, and generate a second data set corresponding to the first information data, wherein the first data set is the current data set data of the GPU; and the second data set is a sub-data set corresponding to the first data set; And / or, the data parallel processing unit further includes: a sixth data generating module, configured to generate and obtain state data corresponding to the GPU, and allocate and process a second data set corresponding to the first information data; A data parallel computing processing module, used for parallel computing and processing a second data set corresponding to the GPU based on the state data corresponding to the GPU; And / or, the image acceleration processing unit further includes: A seventh data generation module, used to estimate and generate performance data corresponding to the GPU in real time in combination with the performance analysis tool, and generate a corresponding evaluation report based on the performance data; The data optimization and adjustment processing module is used to optimize and adjust the code data and model data corresponding to the GPU based on the performance data and the evaluation report.

[0018] The third object of the present invention is achieved as follows: it includes a processor, a memory and a multi-module parallel accelerated image processing platform control program suitable for GPU; wherein the multi-module parallel accelerated image processing platform control program suitable for GPU is executed on the processor, the multi-module parallel accelerated image processing platform control program suitable for GPU is stored in the memory, and the multi-module parallel accelerated image processing platform control program suitable for GPU implements the multi-module parallel accelerated image processing method suitable for GPU.

[0019] The fourth object of the present invention is achieved in this way: the computer-readable storage medium stores a multi-module parallel accelerated image processing platform control program suitable for a GPU, and the multi-module parallel accelerated image processing platform control program suitable for a GPU implements the multi-module parallel accelerated image processing method suitable for a GPU.

[0020] The present invention obtains first information data corresponding to a GPU through a method, detects the operating performance of the GPU in real time based on the first information data, and generates corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance index data corresponding to the GPU; according to the second information data, the operating performance corresponding to the GPU is optimized in real time, and corresponding third information data is generated; wherein the third information data is index data corresponding to the GPU and after operating performance optimization processing; based on the GPU, and in combination with the third information data, multiple modules are accelerated in parallel to process and render the image data to be processed, as well as the system, platform and storage medium corresponding to the method, so as to realize multi-module parallel acceleration: introduce a data automatic acquisition module, a GPU self-detection module, a code optimization processing module, a data parallel processing module and a performance analysis optimization module, and accelerate the GPU synchronously in multiple modes. Performance analysis and optimization: add a performance analysis optimization module to analyze the performance of the accelerated GPU, further optimize the acceleration process according to the results, and ensure the stability and effectiveness of the GPU acceleration effect.

[0021] That is to say, in the scheme of the present invention, by providing an automatic data acquisition module and a GPU self-detection module in the system, it is possible to acquire and detect various parameter data about the GPU, ensure that the GPU itself is in a normal state, and ensure the success rate of GPU acceleration. At the same time, by providing a code optimization processing module, a data parallelization processing module and a model parallelization processing module, the GPU is accelerated synchronously through these three modes, which can effectively ensure the acceleration effect and effectiveness of the GPU. At the same time, a performance analysis and optimization module is also provided in the system, which can analyze the performance of the GPU after acceleration, and further optimize the acceleration process according to the analysis results, which helps to stabilize the optimization of the GPU acceleration effect and improve the actual application effect of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0023] Figure 1 A schematic diagram of the module structure of an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 2A schematic diagram of the submodule structure of a data automatic acquisition module of an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 3 A schematic diagram of the submodule structure of a GPU self-detection module in an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 4 It is a schematic diagram of the submodule structure of a code optimization processing module of an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU of the present invention; Figure 5 A schematic diagram of the submodule structure of a data parallel processing module of an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 6 A schematic diagram of the submodule structure of a performance analysis and optimization module of an embodiment of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 7 A schematic diagram of the process steps of a multi-module parallel accelerated image processing method suitable for a GPU according to the present invention; Figure 8 This is a schematic diagram of a multi-module parallel accelerated image processing system architecture suitable for GPU in the present invention; Fig. 9 This is a schematic diagram of a multi-module parallel accelerated image processing platform architecture suitable for GPU in the present invention; Fig.10 A schematic diagram of a computer-readable storage medium architecture in an embodiment of the present invention; In the figure: 1-automatic data acquisition module; 2-GPU self-detection module; 3-code optimization processing module; 4-data parallel processing module; 5-performance analysis and optimization module.

[0024] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings in conjunction with the embodiments. DETAILED DESCRIPTION

[0025] In order to better understand the purpose, technical solutions and advantages of the present invention, the present invention is further described below in conjunction with the accompanying drawings and specific implementation methods. Those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification.

[0026] The present invention may also be implemented or applied through other different specific examples, and the details in this specification may also be modified and changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention.

[0027] It should be noted that if the embodiments of the present invention involve directional indications (such as up, down, left, right, front, back...), the directional indications are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.

[0028] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present invention, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. Secondly, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such a combination of technical solutions does not exist and is not within the scope of protection required by the present invention.

[0029] Preferably, the multi-module parallel accelerated image processing method suitable for GPU of the present invention is applied in one or more terminals or servers. The terminal is a device that can automatically perform numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), digital signal processors (DSP), embedded devices, etc.

[0030] The terminal can be a computing device such as a desktop computer, a notebook, a PDA, a cloud server, etc. The terminal can interact with the client through a keyboard, a mouse, a remote control, a touch pad, or a voice control device.

[0031] The present invention is to realize a multi-module parallel accelerated image processing method, system, platform and storage medium suitable for GPU.

[0032] like Figure 7 , which is a flow chart of a multi-module parallel accelerated image processing method suitable for a GPU provided by an embodiment of the present invention.

[0033] In this embodiment, the multi-module parallel accelerated image processing method suitable for GPU can be applied to a terminal or a fixed terminal with a display function. The terminal is not limited to a personal computer, a smart phone, a tablet computer, a desktop computer or an all-in-one computer equipped with a camera, etc.

[0034] The multi-module parallel accelerated image processing method suitable for GPU can also be applied to a hardware environment composed of a terminal and a server connected to the terminal through a network. The network includes but is not limited to: a wide area network, a metropolitan area network or a local area network. The multi-module parallel accelerated image processing method suitable for GPU in the embodiment of the present invention can be executed by a server, can be executed by a terminal, or can be executed by both a server and a terminal.

[0035] For example, for a terminal that needs to perform multi-module parallel accelerated image processing suitable for GPU, the multi-module parallel accelerated image processing function suitable for GPU provided by the method of the present invention can be directly integrated on the terminal, or a client for implementing the method of the present invention can be installed. For another example, the method provided by the present invention can also be run on a server or other device in the form of a software development kit (Software Development Kit, SDK), and an interface for the multi-module parallel accelerated image processing function suitable for GPU is provided in the form of SDK. The terminal or other device can implement the multi-module parallel accelerated image processing function suitable for GPU through the provided interface. The present invention is further described below in conjunction with the accompanying drawings.

[0036] like Figure 1-Figure 7 As shown, the present invention provides a multi-module parallel accelerated image processing method suitable for GPU, and the method comprises the following steps: S1. Acquire first information data corresponding to a GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; S2. According to the second information data, optimize the operation performance corresponding to the GPU in real time and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; S3. Based on the GPU and in combination with the third information data, multiple modules accelerate the processing in parallel and render the image data to be processed.

[0037] The method of acquiring first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data further includes: S11, generating and acquiring model data and architecture data corresponding to the GPU, and data of tasks that the GPU currently needs to accelerate; S12, detecting working environment data corresponding to the GPU in real time, and monitoring power consumption state data corresponding to the GPU; S13, generating and acquiring operation status information data corresponding to the GPU; wherein the operation status information data includes GPUD usage data and memory occupancy data.

[0038] The method of acquiring first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data further includes: S14, detecting the performance indicator data to be detected corresponding to the GPU, and generating first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing performance, memory capacity, video memory bit width, GPU power consumption, GPU operating frequency and video memory type corresponding to the GPU; S15. Based on the first detection data, determine whether the performance indicator data corresponding to the GPU reaches the preset standard data. If so, execute the next step; otherwise, continue to execute self-detection.

[0039] The method of optimizing and processing the operating performance corresponding to the GPU in real time according to the second information data and generating corresponding third information data further includes: S21, based on the second information data, generating and acquiring first code data corresponding to the first information data, optimizing and processing the first code data, and generating second code data corresponding to the first information data, wherein the first code data is code data to be optimized; and the second code data is optimized code data; S22. Based on the second information data, generate and obtain a first data set corresponding to the first information data, divide and process the first data set, and generate a second data set corresponding to the first information data, wherein the first data set is the current data set data of the GPU; the second data set is a sub-data set corresponding to the first data set.

[0040] The method of optimizing and processing the operating performance corresponding to the GPU in real time according to the second information data and generating corresponding third information data further includes: S23, generating and acquiring state data corresponding to the GPU, and assigning and processing a second data set corresponding to the first information data; S24. Based on the state data corresponding to the GPU, perform parallel computing to process a second data set corresponding to the GPU.

[0041] Based on the GPU and in combination with the third information data, the multi-module parallel accelerated processing and rendering of the image data to be processed also includes: S31, combining a performance analysis tool, estimating and generating performance data corresponding to the GPU in real time, and generating a corresponding evaluation report according to the performance data; S32: Based on the performance data and the evaluation report, respectively optimize and adjust the code data and model data corresponding to the GPU.

[0042] Specifically, in an embodiment of the present invention, a new distributed GPU acceleration system is provided, including an automatic data acquisition module, the output end of the automatic data acquisition module is connected to the input end of a GPU self-detection module, the output end of the GPU self-detection module is connected to the input end of a code optimization processing module, and the output end of the code optimization processing module is connected to the input end of a data parallelization processing module.

[0043] The output end of the data parallel processing module is connected to the input end of the model parallel processing module, the output end of the model parallel processing module is connected to the input end of the data feedback module, the output end of the data feedback module is connected to the input end of the data receiving terminal, the output end of the data receiving terminal is connected to the input end of the performance analysis and optimization module, and the data receiving terminal is one or more of a mobile phone and a laptop computer.

[0044] Among them, the data automatic acquisition module is used to comprehensively and systematically obtain various parameters and status information of the GPU to ensure the integrity and real-time nature of the data. The GPU self-detection module is used to ensure that the GPU reaches the best state in all aspects through a comprehensive self-detection module, thereby improving the reliability and stability of the overall system. The code optimization processing module is used to significantly improve the efficiency and accuracy of code optimization through automated code retrieval, extraction, optimization, verification and merging. The data parallelization processing module is used to improve the efficiency and accuracy of data parallelization processing through automatic detection and allocation. The performance analysis and optimization module is used to realize the integrated processing of performance evaluation, result analysis and optimization adjustment, thereby improving the real-time nature and accuracy of optimization. Compared with the prior art, this solution adopts an automated and systematic processing method in data acquisition, self-detection, code optimization, data parallelization processing and performance analysis optimization, thereby improving the efficiency and performance of the overall system.

[0045] The automatic data acquisition module includes a GPU parameter acquisition module, the output end of the GPU parameter acquisition module is connected to the input end of the acceleration project data acquisition module, and the output end of the acceleration project data acquisition module is connected to the input end of the GPU operating environment information acquisition module.

[0046] The output end of the GPU operating environment information acquisition module is connected to the input end of the GPU operating power consumption data acquisition module, and the output end of the GPU operating power consumption data acquisition module is connected to the input end of the GPU operating state information acquisition module.

[0047] The GPU self-detection module includes a GPU computing power self-detection module and a GPU memory size self-detection module. The output end of the GPU computing power self-detection module is connected to the input end of the GPU memory size self-detection module, and the output end of the GPU memory size self-detection module is connected to the input end of the GPU video memory bit width self-detection module.

[0048] The output end of the GPU video memory bit width self-check module is connected to the input end of the GPU power consumption self-check module, the output end of the GPU power consumption self-check module is connected to the input end of the GPU frequency self-check module, and the output end of the GPU frequency self-check module is connected to the input end of the GPU video memory type and capacity self-check module.

[0049] The code optimization processing module includes an execution code retrieval module and an execution code extraction module. The output end of the execution code retrieval module is connected to the input end of the execution code extraction module, and the output end of the execution code extraction module is connected to the input end of the programming model automatic import module.

[0050] The output end of the programming model automatic import module is connected to the input end of the code rewriting module, the output end of the code rewriting module is connected to the input end of the code automatic verification module, the output end of the code automatic verification module is connected to the input end of the code re-merging module, and the programming model imported by the programming model automatic import module is one or more of CUDA and OpenCL.

[0051] The data parallel processing module includes a data set automatic detection module, the output end of the data set automatic detection module is connected to the input end of the data subset automatic division module, the output end of the data subset automatic division module is connected to the input end of the GPU automatic detection module, the output end of the GPU automatic detection module is connected to the input end of the data subset automatic allocation module, and the output end of the data subset automatic allocation module is connected to the input end of the GPU parallel computing module.

[0052] The performance analysis and optimization module includes a performance analysis tool calling module, the output end of the performance analysis tool calling module is connected to the input end of the GPU acceleration performance evaluation module, the output end of the GPU acceleration performance evaluation module is connected to the input end of the evaluation result automatic analysis module, the output end of the evaluation result automatic analysis module is connected to the input end of the code optimization and adjustment module, the output end of the code optimization and adjustment module is connected to the input end of the data parallelization adjustment module, and the output end of the data parallelization adjustment module is connected to the input end of the model parallelization adjustment module.

[0053] Specifically, the automatic acquisition module obtains GPU parameters: automatically collects basic information about the GPU, such as model, architecture, etc. Obtain task data: collects data about the current task that needs to be accelerated, such as data set size and type. Collect operating environment information: detects the current working environment of the GPU, including temperature, fan speed, etc. Monitor power consumption: monitor the power consumption of the GPU to ensure that it runs within a safe range. Obtain operating status: collect operating status information such as GPU usage and memory usage.

[0054] In the existing technology, only part of the information is usually collected. This solution collects all relevant data comprehensively and systematically through multi-module collaboration to ensure data integrity and real-time update.

[0055] GPU self-detection module: Computing power detection: Run standard computing tasks to detect whether the GPU's computing power meets the standards. Memory size detection: Detect the GPU memory size to ensure that it meets the task requirements. Video memory bit width detection: Detect the video memory bit width to ensure that the data transmission speed meets the requirements. Power consumption detection: Monitor GPU power consumption to ensure safe operation. Frequency detection: Detect the GPU operating frequency to ensure that the frequency is stable. Video memory type and capacity detection: Detect the type and capacity of the video memory to ensure compatibility and sufficient capacity.

[0056] While existing technologies usually only test some performance indicators, this solution comprehensively tests all performance indicators of the GPU to ensure that it runs in the best state.

[0057] Code optimization processing module: Code retrieval: Automatically retrieve the code parts that need to be optimized. Code extraction: Extract the code segments that need to be optimized. Import programming model: Import the appropriate programming model (such as CUDA, OpenCL) and rewrite the code. Code rewriting: Optimize and rewrite the code. Code verification: Automatically verify whether the optimized code functions correctly. Code merging: Merge the optimized code back into the project.

[0058] While existing technologies usually rely on manual code optimization, this solution improves the efficiency and accuracy of code optimization through automated processes.

[0059] Data parallel processing module: Data set detection: Automatically detect the current data set. Data subset division: Divide a large data set into multiple subsets for parallel processing. GPU detection: Detect the status and performance of each GPU. Data allocation: According to the status of the GPU, allocate data subsets to different GPUs for parallel computing. Parallel computing: Each GPU processes its own data subset in parallel to improve computing efficiency.

[0060] While the existing technology usually distributes data manually, this solution improves the efficiency and accuracy of data processing through automatic detection and distribution.

[0061] Performance analysis and optimization module: Call the performance analysis tool to obtain accelerated performance data. Performance evaluation: Evaluate the performance after GPU acceleration and generate an evaluation report. Result analysis: Automatically analyze the evaluation results to find performance bottlenecks and optimization points. Optimization adjustment: Optimize and adjust the code and data processing methods based on the analysis results. Adjust parallelization: Adjust the parallel processing methods of data and models based on the analysis results.

[0062] In the prior art, performance analysis and optimization are usually separated. This solution uses an integrated performance analysis and optimization module to achieve integrated processing of performance evaluation, result analysis and optimization adjustment, thereby improving the real-time performance and accuracy of optimization.

[0063] In other words, through the coordinated work of automatic data acquisition, GPU self-detection, code optimization processing, data parallel processing and performance analysis optimization modules, this solution achieves comprehensive optimization and acceleration of the GPU, significantly improving the performance of the GPU and the actual application effect of the system. Compared with existing technologies, this solution has significant advantages in automation, systematization and real-time performance.

[0064] Example 1 As attached Figure 1-Figure 6 The present invention provides a technical solution: a novel distributed GPU acceleration system, comprising an automatic data acquisition module 1, wherein the output end of the automatic data acquisition module 1 is connected to the input end of a GPU self-detection module 2, the output end of the GPU self-detection module 2 is connected to the input end of a code optimization processing module 3, the output end of the code optimization processing module 3 is connected to the input end of a data parallel processing module 4, the output end of the data parallel processing module 4 is connected to the input end of a model parallel processing module, the output end of the model parallel processing module is connected to the input end of a data feedback module, the output end of the data feedback module is connected to the input end of a data receiving terminal, the output end of the data receiving terminal is connected to the input end of a performance analysis optimization module 5, and the data receiving terminal is a laptop computer.

[0065] The automatic data acquisition module 1 includes a GPU parameter acquisition module, the output end of the GPU parameter acquisition module is connected to the input end of the acceleration project data acquisition module, the output end of the acceleration project data acquisition module is connected to the input end of the GPU operating environment information acquisition module, the output end of the GPU operating environment information acquisition module is connected to the input end of the GPU operating power consumption data acquisition module, and the output end of the GPU operating power consumption data acquisition module is connected to the input end of the GPU operating status information acquisition module. Among them, the GPU parameter acquisition module is used to obtain the basic parameter information of the GPU, including model, architecture, etc. Acceleration project data acquisition module: obtains relevant data of the current acceleration task, such as data set size, task type, etc.

[0066] The GPU operating environment information acquisition module is used to collect the current operating environment information of the GPU, such as temperature, fan speed, etc. The GPU operating power consumption data acquisition module is used to monitor the power consumption of the GPU. The GPU operating status information acquisition module is used to obtain the current usage status of the GPU, including usage rate, memory usage, etc.

[0067] In the existing technology, only some parameters are usually obtained, and there is no systematic data acquisition process. The new solution uses the cooperation of multiple modules to comprehensively and systematically obtain various parameters and status information of the GPU, ensuring the integrity and real-time nature of the data.

[0068] The GPU self-detection module 2 includes a GPU computing power self-detection module and a GPU memory size self-detection module, the output end of the GPU computing power self-detection module is connected to the input end of the GPU memory size self-detection module, the output end of the GPU memory size self-detection module is connected to the input end of the GPU video memory bit width self-detection module, the output end of the GPU video memory bit width self-detection module is connected to the input end of the GPU power consumption self-detection module, the output end of the GPU power consumption self-detection module is connected to the input end of the GPU frequency self-detection module, and the output end of the GPU frequency self-detection module is connected to the input end of the GPU video memory type and capacity self-detection module.

[0069] Among them, GPU self-detection is implemented through the following modules: GPU computing power self-detection module is used to detect the computing power of the GPU to ensure that it reaches the expected performance. GPU memory size self-detection module is used to detect the memory size of the GPU to ensure that it meets the task requirements. GPU video memory bit width self-detection module is used to detect the video memory bit width to ensure data transmission speed. GPU power consumption self-detection module is used to monitor power consumption to ensure operation within a safe range. GPU frequency self-detection module is used to detect the operating frequency of the GPU to ensure stable frequency. GPU video memory type and capacity self-detection module is used to detect the video memory type and capacity to ensure compatibility and sufficient capacity.

[0070] The existing technology usually only detects some performance indicators, but this solution ensures that the GPU reaches the best state in all aspects through a comprehensive self-check module, thereby improving the reliability and stability of the overall system.

[0071] The GPU memory bit width self-test module is implemented through the following steps: Run the memory bandwidth test program: such as memory copy, data transmission test, etc. Monitor the transmission rate and bandwidth utilization: compare with the standard value to detect whether the memory bit width meets the standard. Generate a self-test report: record the memory bit width self-test results as a basis for subsequent optimization. In the prior art, the memory bit width self-test usually relies on external tools. This solution realizes the autonomous detection and analysis of the memory bit width through an integrated self-test module.

[0072] The code optimization processing module 3 includes an execution code retrieval module and an execution code extraction module, the output end of the execution code retrieval module is connected to the input end of the execution code extraction module, the output end of the execution code extraction module is connected to the input end of the programming model automatic import module, the output end of the programming model automatic import module is connected to the input end of the code rewriting module, the output end of the code rewriting module is connected to the input end of the code automatic verification module, the output end of the code automatic verification module is connected to the input end of the code re-merging module, and the programming model imported by the programming model automatic import module is OpenCL.

[0073] Among them, the code optimization processing module is implemented by the following steps: the execution code retrieval module is used to retrieve the code part that needs to be optimized. The execution code extraction module is used to extract the code segment that needs to be optimized. The programming model automatic import module is used to import a suitable programming model (such as CUDA, OpenCL) for code rewriting. The code rewriting module is used to optimize and rewrite the code. The code automatic verification module is used to verify whether the function of the rewritten code is correct. The code re-merging module is used to merge the optimized code into the overall project. In the prior art, code optimization is usually performed manually, but this solution significantly improves the efficiency and accuracy of code optimization through automated code retrieval, extraction, optimization, verification and merging.

[0074] The data parallel processing module 4 includes a data set automatic detection module, the output end of the data set automatic detection module is connected to the input end of the data subset automatic division module, the output end of the data subset automatic division module is connected to the input end of the GPU automatic detection module, the output end of the GPU automatic detection module is connected to the input end of the data subset automatic allocation module, and the output end of the data subset automatic allocation module is connected to the input end of the GPU parallel computing module.

[0075] Among them, the data parallel processing module is implemented by the following steps: the data set automatic detection module is used to detect the current data set status. The data subset automatic division module is used to divide the large data set into multiple subsets for parallel processing. The GPU automatic detection module is used to detect the status and performance of each GPU. The data subset automatic allocation module is used to allocate data subsets to different GPUs for parallel computing according to the status of the GPU. The GPU parallel computing module is used for each GPU to process its own data subset in parallel to improve computing efficiency. The existing technology usually manually allocates data, while this solution improves the efficiency and accuracy of data parallel processing through automatic detection and allocation.

[0076] The performance analysis and optimization module 5 includes a performance analysis tool calling module, the output end of the performance analysis tool calling module is connected to the input end of the GPU acceleration performance evaluation module, the output end of the GPU acceleration performance evaluation module is connected to the input end of the evaluation result automatic analysis module, the output end of the evaluation result automatic analysis module is connected to the input end of the code optimization and adjustment module, the output end of the code optimization and adjustment module is connected to the input end of the data parallelization adjustment module, and the output end of the data parallelization adjustment module is connected to the input end of the model parallelization adjustment module.

[0077] Among them, the performance analysis and optimization module is implemented through the following steps: the performance analysis tool calling module is used to call the performance analysis tool to obtain the performance data after acceleration. The GPU acceleration performance evaluation module is used to evaluate the performance after GPU acceleration and generate an evaluation report. The evaluation result automatic analysis module is used to automatically analyze the evaluation results to find out the performance bottlenecks and optimization points. The code optimization adjustment module is used to further optimize and adjust the code according to the analysis results. The data parallelization adjustment module is used to adjust the data parallelization processing method according to the analysis results. The model parallelization adjustment module is used to adjust the model parallelization processing method according to the analysis results. In the prior art, performance analysis and optimization are usually separated. This solution realizes the integrated processing of performance evaluation, result analysis and optimization adjustment through the integrated performance analysis and optimization module, thereby improving the real-time and accuracy of the optimization.

[0078] In this embodiment, by setting up an automatic data acquisition module and a GPU self-detection module in the system, various parameter data about the GPU can be acquired and detected, ensuring that the GPU itself is in a normal state and the success rate of GPU acceleration is guaranteed. At the same time, by setting up a code optimization processing module, a data parallelization processing module and a model parallelization processing module, the GPU can be accelerated synchronously through these three modes, which can effectively ensure the acceleration effect and effectiveness of the GPU.

[0079] The GPU computing power self-check module is implemented through the following steps: Run standard computing tasks such as matrix multiplication and large-scale parallel computing. Monitor the computing time and results for comparison with standard results to detect whether the computing performance meets the standards. Generate a self-check report to record the computing power self-check results as a basis for subsequent optimization. In the prior art, computing power self-check usually relies on external tools. This solution realizes autonomous detection and analysis of computing power through an integrated self-check module.

[0080] Example 2 As attached Figure 1-Figure 6 The present invention provides a technical solution: a novel distributed GPU acceleration system, comprising an automatic data acquisition module 1, wherein the output end of the automatic data acquisition module 1 is connected to the input end of a GPU self-detection module 2, the output end of the GPU self-detection module 2 is connected to the input end of a code optimization processing module 3, the output end of the code optimization processing module 3 is connected to the input end of a data parallel processing module 4, the output end of the data parallel processing module 4 is connected to the input end of a model parallel processing module, the output end of the model parallel processing module is connected to the input end of a data feedback module, the output end of the data feedback module is connected to the input end of a data receiving terminal, the output end of the data receiving terminal is connected to the input end of a performance analysis optimization module 5, and the data receiving terminal is a mobile phone.

[0081] The automatic data acquisition module 1 includes a GPU parameter acquisition module, the output end of the GPU parameter acquisition module is connected to the input end of the acceleration project data acquisition module, the output end of the acceleration project data acquisition module is connected to the input end of the GPU operating environment information acquisition module, the output end of the GPU operating environment information acquisition module is connected to the input end of the GPU operating power consumption data acquisition module, and the output end of the GPU operating power consumption data acquisition module is connected to the input end of the GPU operating status information acquisition module.

[0082] The GPU self-detection module 2 includes a GPU computing power self-detection module and a GPU memory size self-detection module, the output end of the GPU computing power self-detection module is connected to the input end of the GPU memory size self-detection module, the output end of the GPU memory size self-detection module is connected to the input end of the GPU video memory bit width self-detection module, the output end of the GPU video memory bit width self-detection module is connected to the input end of the GPU power consumption self-detection module, the output end of the GPU power consumption self-detection module is connected to the input end of the GPU frequency self-detection module, and the output end of the GPU frequency self-detection module is connected to the input end of the GPU video memory type and capacity self-detection module.

[0083] The code optimization processing module 3 includes an execution code retrieval module and an execution code extraction module, the output end of the execution code retrieval module is connected to the input end of the execution code extraction module, the output end of the execution code extraction module is connected to the input end of the programming model automatic import module, the output end of the programming model automatic import module is connected to the input end of the code rewriting module, the output end of the code rewriting module is connected to the input end of the code automatic verification module, the output end of the code automatic verification module is connected to the input end of the code re-merging module, and the programming model imported by the programming model automatic import module is CUDA.

[0084] The data parallel processing module 4 includes a data set automatic detection module, the output end of the data set automatic detection module is connected to the input end of the data subset automatic division module, the output end of the data subset automatic division module is connected to the input end of the GPU automatic detection module, the output end of the GPU automatic detection module is connected to the input end of the data subset automatic allocation module, and the output end of the data subset automatic allocation module is connected to the input end of the GPU parallel computing module.

[0085] The performance analysis and optimization module 5 includes a performance analysis tool calling module, the output end of the performance analysis tool calling module is connected to the input end of the GPU acceleration performance evaluation module, the output end of the GPU acceleration performance evaluation module is connected to the input end of the evaluation result automatic analysis module, the output end of the evaluation result automatic analysis module is connected to the input end of the code optimization and adjustment module, the output end of the code optimization and adjustment module is connected to the input end of the data parallelization adjustment module, and the output end of the data parallelization adjustment module is connected to the input end of the model parallelization adjustment module.

[0086] In this embodiment, a performance analysis and optimization module is also provided in the system, which can analyze the performance after GPU acceleration and further optimize the acceleration process according to the analysis results, thereby helping to stabilize the optimization of the GPU acceleration effect and improve the actual application effect of the system.

[0087] Preferably: In the scheme of the present invention, the actual effect of multi-module synchronous acceleration and performance optimization is demonstrated by: adding specific experimental data and case analysis, demonstrating the performance improvement effect of these modules in different application scenarios, and providing comparative data to prove its effectiveness.

[0088] Implementation method: Experimental data and case analysis: Steps: 1. Design the experiment: Application scenarios: image processing, big data analysis, and machine learning model training.

[0089] Test dataset: Use public standard datasets, such as ImageNet (image processing), Kaggle dataset (big data analysis), and MNIST (machine learning).

[0090] 2. Perform benchmark tests: Run without optimization and record processing time, power consumption, and GPU usage.

[0091] 3. Enable multi-module synchronous acceleration: Enable the data automatic acquisition module to record basic data. Enable the GPU self-detection module to detect and optimize the GPU status. Enable the code optimization processing module to optimize the code to be processed. Enable the data parallel processing module to assign data tasks. Enable the performance analysis and optimization module to analyze and adjust the optimization strategy.

[0092] 4. Analysis results: Compare the performance data at different stages, generate charts and analysis reports, and show the contribution of each module and the overall improvement effect.

[0093] Virtual results: In the image processing scenario, the processing time is reduced from 200 seconds to 120 seconds, the power consumption is reduced from 250 W to 180 W, and the GPU utilization rate is increased from 60% to 90%.

[0094] In the big data analysis scenario, the processing time is reduced from 500 seconds to 300 seconds, the power consumption is reduced from 300W to 220W, and the GPU utilization rate is increased from 55% to 85%.

[0095] In the machine learning model training scenario, the training time was reduced from 1000 seconds to 600 seconds, the power consumption was reduced from 350W to 250W, and the GPU utilization rate was increased from 50% to 80%.

[0096] Comparison between automated code optimization and manual optimization: The solution of the present invention is as follows: The specific steps and logic of automated code optimization are described in detail, including specific implementation methods of code retrieval, extraction, rewriting, verification and merging.

[0097] Implementation method: The specific steps and logic of automatic code optimization are described in detail as follows: Steps: 1. Code retrieval: Use Clang Static Analyzer to automatically retrieve the code parts that need to be optimized.

[0098] 2. Code extraction: Develop Python scripts to automatically extract code segments that need to be optimized.

[0099] 3. Programming model import: Use the CUDA automatic conversion tool to import the appropriate programming model.

[0100] 4. Code rewriting: Use LLVM Pass for code optimization and rewriting.

[0101] 5. Code verification: Use the Google Test framework to automatically verify the optimized code functions.

[0102] 6. Code merging: Use Git to automatically merge the optimized code into the main project and perform continuous integration testing (Jenkins).

[0103] Virtual results: Through automated optimization, the code running time was reduced from 50ms to 30ms, and the code size was reduced by 20%. During the automated optimization process, 5 potential performance bottlenecks were found and fixed, which were not found by manual optimization. Automated optimization took 1 hour, while manual optimization took 8 hours.

[0104] Real-time performance testing and optimization of GPU: The solution of the present invention adds a description of the real-time guarantee measures for the performance testing and optimization process, such as what algorithm or technology is used to achieve real-time monitoring and optimization, to ensure that the system can respond and adjust in time.

[0105] Implementation method: The specific steps and logic of automatic code optimization are described in detail as follows: Steps: 1. Code retrieval: Use Clang Static Analyzer to automatically retrieve the code parts that need to be optimized.

[0106] 2. Code extraction: Develop Python scripts to automatically extract code segments that need to be optimized.

[0107] 3. Programming model import: Use the CUDA automatic conversion tool to import the appropriate programming model.

[0108] 4. Code rewriting: Use LLVM Pass for code optimization and rewriting.

[0109] 5. Code verification: Use the Google Test framework to automatically verify the optimized code functions.

[0110] 6. Code merging: Use Git to automatically merge the optimized code into the main project and perform continuous integration testing (Jenkins).

[0111] Virtual results: Through automated optimization, the code running time was reduced from 50ms to 30ms, and the code size was reduced by 20%. During the automated optimization process, 5 potential performance bottlenecks were found and fixed, which were not found by manual optimization. Automated optimization took 1 hour, while manual optimization took 8 hours.

[0112] Efficiency of the data parallel processing module: The solution of the present invention supplements the specific technical implementation details of the data parallel processing module and provides a performance comparison analysis in actual applications to illustrate the advantages and specific improvements of the module over the traditional manual allocation method.

[0113] Implementation method: The technical implementation details and performance comparison analysis are as follows: Steps: 1. Automatic detection: Use Pandas to detect the size and structure of the current dataset.

[0114] 2. Subsetting: Developing a block-based partitioning algorithm to partition large data sets into small subsets.

[0115] 3. GPU detection: Real-time detection of the status and performance (usage rate, temperature, power consumption) of each GPU.

[0116] 4. Data distribution: Use a load balancing algorithm to distribute data subsets to different GPUs.

[0117] 5. Parallel computing: Each GPU processes the assigned data subset in parallel, recording the processing time and resource utilization.

[0118] 6. Performance comparison: Compare the performance data of manual allocation and automatic allocation, generate charts and reports, and display the optimization effect.

[0119] Virtual results: In the case of automatic allocation, data processing time is reduced from 600 seconds to 400 seconds. The GPU utilization rate is balanced at more than 80%, while the utilization rate fluctuates greatly in the case of manual allocation. The automatic allocation algorithm reduces data transmission overhead and improves overall computing efficiency by 25%.

[0120] Integration of performance analysis tools: The solution of the present invention details the integration mode and working mechanism of performance analysis tools, including the data interaction process between modules, to ensure the consistency and efficiency of the optimization process.

[0121] Implementation method: tool integration method and collaboration mechanism: Steps: 1. Tool selection: Select NVIDIA Nsight, VTune, and Perfetto for integration.

[0122] 2. Unified interface: Develop a unified interface module to ensure that each tool can obtain and provide performance data through this interface. 3. Data interaction: Design data format and transmission protocol to ensure smooth data exchange between tools.

[0123] 4. Collaboration mechanism: Design tool collaboration workflow, conduct performance evaluation first, generate a report, analyze the results, and then optimize code and data processing.

[0124] 5. Test verification: Test the integration effect in actual applications to ensure that the tools can work together, and make adjustments and optimizations based on feedback.

[0125] Virtual results: After integration, the performance analysis time was reduced from 30 minutes to 10 minutes, and the accuracy of the analysis results increased by 15%. With the collaboration of various tools, the success rate of optimization strategy execution increased from 70% to 95%. Real-time performance monitoring and optimization improved the overall performance of the system by 20% and the concurrent processing capacity by 30%.

[0126] To achieve the above object, the present invention also provides a multi-module parallel accelerated image processing system suitable for GPU, such as Figure 8 As shown, the system specifically includes: A data acquisition and generation unit, used to acquire first information data corresponding to the GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; A data parallel processing unit, configured to optimize and process the operation performance corresponding to the GPU in real time according to the second information data, and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; The image acceleration processing unit is used for accelerating the processing and rendering of the image data to be processed in parallel using multiple modules based on the GPU and in combination with the third information data.

[0127] The data acquisition generation unit further includes: A first data generation module is used to generate and obtain model data and architecture data corresponding to the GPU, as well as data of tasks that the GPU currently needs to accelerate; A data monitoring and processing module, used to detect the working environment data corresponding to the GPU in real time, and monitor the power consumption state data corresponding to the GPU; A second data generation module is used to generate and obtain operation status information data corresponding to the GPU; wherein the operation status information data includes the usage rate data and memory occupancy data of the GPUD; And / or, the data acquisition generation unit further includes: a third data generating module, configured to detect the performance indicator data to be detected corresponding to the GPU, and generate first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing operation performance, memory capacity, video memory bit width, GPU power consumption, GPU operation frequency and video memory type corresponding to the GPU; A first data determination module, configured to determine whether performance indicator data corresponding to the GPU reaches preset standard data based on the first detection data; And / or, the data parallel processing unit further includes: a fourth data generating module, configured to generate and obtain first code data corresponding to the first information data based on the second information data, optimize the first code data, and generate second code data corresponding to the first information data, wherein the first code data is code data to be optimized; and the second code data is optimized code data; a fifth data generation module, configured to generate and obtain a first data set corresponding to the first information data based on the second information data, divide and process the first data set, and generate a second data set corresponding to the first information data, wherein the first data set is the current data set data of the GPU; and the second data set is a sub-data set corresponding to the first data set; And / or, the data parallel processing unit further includes: a sixth data generating module, configured to generate and obtain state data corresponding to the GPU, and allocate and process a second data set corresponding to the first information data; A data parallel computing processing module, used for parallel computing and processing a second data set corresponding to the GPU based on the state data corresponding to the GPU; And / or, the image acceleration processing unit further includes: A seventh data generation module, used to estimate and generate performance data corresponding to the GPU in real time in combination with the performance analysis tool, and generate a corresponding evaluation report based on the performance data; The data optimization and adjustment processing module is used to optimize and adjust the code data and model data corresponding to the GPU based on the performance data and the evaluation report.

[0128] In the system solution embodiment of the present invention, the method steps involved in the multi-module parallel accelerated image processing suitable for GPU have been described above in detail. That is to say, the functional modules in the system are used to implement the steps or sub-steps in the above method embodiment, which will not be repeated here.

[0129] To achieve the above object, the present invention also provides a multi-module parallel accelerated image processing platform suitable for GPU, such as Fig. 9As shown, it includes a processor, a memory, and a multi-module parallel accelerated image processing platform control program suitable for GPU; wherein, the multi-module parallel accelerated image processing platform control program suitable for GPU is executed by the processor, the multi-module parallel accelerated image processing platform control program suitable for GPU is stored in the memory, and the multi-module parallel accelerated image processing platform control program suitable for GPU implements the multi-module parallel accelerated image processing method steps suitable for GPU. For example: S1. Acquire first information data corresponding to a GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; S2. According to the second information data, optimize the operation performance corresponding to the GPU in real time and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; S3. Based on the GPU and in combination with the third information data, multiple modules accelerate the processing in parallel and render the image data to be processed.

[0130] The specific details of the steps have been explained above and will not be repeated here.

[0131] In the embodiment of the present invention, the built-in processor of the multi-module parallel accelerated image processing platform suitable for GPU can be composed of integrated circuits, for example, it can be composed of a single packaged integrated circuit, or it can be composed of multiple integrated circuits with the same or different functions, including one or more central processing units (CPU), microprocessors, digital processing chips, graphics processors and various control chips. The processor uses various interfaces and lines to connect various components, and executes various functions and processes data of multi-module parallel accelerated image processing suitable for GPU by running or executing programs or units stored in the memory, and calling data stored in the memory; The memory is used to store program codes and various data. It is installed in a multi-module parallel accelerated image processing platform suitable for GPU, and realizes high-speed and automatic access to programs or data during operation.

[0132] The memory includes read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electronically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, magnetic disk storage, magnetic tape storage, or any other computer-readable medium that can be used to carry or store data.

[0133] To achieve the above object, the present invention also provides a computer readable storage medium, such as Fig.10 As shown, the computer-readable storage medium stores a multi-module parallel accelerated image processing platform control program suitable for a GPU, and the multi-module parallel accelerated image processing platform control program suitable for a GPU implements the multi-module parallel accelerated image processing method steps suitable for a GPU, for example: S1. Acquire first information data corresponding to a GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; S2. According to the second information data, optimize the operation performance corresponding to the GPU in real time and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; S3. Based on the GPU and in combination with the third information data, multiple modules accelerate the processing in parallel and render the image data to be processed.

[0134] The specific details of the steps have been explained above and will not be repeated here.

[0135] In the description of the embodiments of the present invention, it should be noted that any process or method description in the flowchart or otherwise described herein may be understood as representing a module, fragment or portion of a code comprising one or more executable instructions for implementing steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations, in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present invention belong.

[0136] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processing module, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM).

[0137] In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.

[0138] In an embodiment of the present invention, to achieve the above-mentioned purpose, the present invention further provides a chip system, wherein the chip system includes at least one processor, and when the program instructions are executed in the at least one processor, the chip system executes the steps of the multi-module parallel accelerated image processing method suitable for GPU, for example: S1. Acquire first information data corresponding to a GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; S2. According to the second information data, optimize the operation performance corresponding to the GPU in real time and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; S3. Based on the GPU and in combination with the third information data, multiple modules accelerate the processing in parallel and render the image data to be processed.

[0139] The specific details of the steps have been explained above and will not be repeated here.

[0140] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working process of the above-described system, device and unit can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0141] The present invention obtains first information data corresponding to a GPU through a method, detects the operating performance of the GPU in real time based on the first information data, and generates corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance index data corresponding to the GPU; according to the second information data, the operating performance corresponding to the GPU is optimized in real time, and corresponding third information data is generated; wherein the third information data is index data corresponding to the GPU and after operating performance optimization processing; based on the GPU, and in combination with the third information data, multiple modules are accelerated in parallel to process and render the image data to be processed, as well as the system, platform and storage medium corresponding to the method, so as to realize multi-module parallel acceleration: introduce a data automatic acquisition module, a GPU self-detection module, a code optimization processing module, a data parallel processing module and a performance analysis optimization module, and accelerate the GPU synchronously in multiple modes. Performance analysis and optimization: add a performance analysis optimization module to analyze the performance of the accelerated GPU, further optimize the acceleration process according to the results, and ensure the stability and effectiveness of the GPU acceleration effect.

[0142] That is to say, in the scheme of the present invention, by providing an automatic data acquisition module and a GPU self-detection module in the system, it is possible to acquire and detect various parameter data about the GPU, ensure that the GPU itself is in a normal state, and ensure the success rate of GPU acceleration. At the same time, by providing a code optimization processing module, a data parallelization processing module and a model parallelization processing module, the GPU is accelerated synchronously through these three modes, which can effectively ensure the acceleration effect and effectiveness of the GPU. At the same time, a performance analysis and optimization module is also provided in the system, which can analyze the performance of the GPU after acceleration, and further optimize the acceleration process according to the analysis results, which helps to stabilize the optimization of the GPU acceleration effect and improve the actual application effect of the system.

[0143] In other words, the scheme of the present invention can improve the acceleration effect: by making multiple acceleration modules work synchronously, the GPU performance can be significantly improved. Improve the detection and optimization capabilities: through the performance analysis optimization module, the acceleration effect can be detected and further optimized to ensure the effectiveness and stability of GPU acceleration. Enhance the actual application effect of the system: by combining multiple optimization measures, the effect and performance of the system in actual application can be improved.

[0144] That is, multiple acceleration modules work synchronously: through the coordinated work of automatic data acquisition, GPU self-detection, code optimization processing, data parallel processing and performance analysis optimization modules, GPU performance is significantly improved. Detection acceleration of performance analysis optimization module: through performance analysis tool call, GPU acceleration performance evaluation, automatic analysis of evaluation results, code optimization adjustment and other steps, the acceleration effect is detected and further optimized. Comprehensive multiple optimization measures: through the comprehensive optimization of data acquisition, self-detection, code optimization, parallel processing and performance analysis, the effect and performance of the system in actual applications are improved.

[0145] The above-mentioned embodiments only express several implementation methods of the present invention, and the description thereof is relatively specific and detailed, but it cannot be understood as limiting the scope of the patent of the present invention. It should be pointed out that, for ordinary technicians in this field, several variations and improvements can be made without departing from the concept of the present invention, which all belong to the protection scope of the present invention. Therefore, the protection scope of the patent of the present invention shall be subject to the attached claims.

Claims

1. A multi-module parallel accelerated image processing method suitable for GPU, characterized in that: The method comprises the steps of: Acquire first information data corresponding to the GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; According to the second information data, the operation performance corresponding to the GPU is optimized in real time, and corresponding third information data is generated; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; Based on the GPU and in combination with the third information data, multiple modules accelerate the processing and rendering of the image data to be processed in parallel.

2. According to claim 1, a multi-module parallel accelerated image processing method suitable for GPU is characterized in that: The method of acquiring first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data further includes: Generate and obtain model data, architecture data corresponding to the GPU, and data on tasks that the GPU currently needs to accelerate; Real-time detection of the working environment data corresponding to the GPU, and monitoring of the power consumption status data corresponding to the GPU; Generate and obtain operation status information data corresponding to the GPU; wherein the operation status information data includes GPUD usage data and memory occupancy data.

3. A multi-module parallel accelerated image processing method suitable for GPU according to claim 1 or 2, characterized in that: The method of acquiring first information data corresponding to the GPU, detecting the operating performance of the GPU in real time based on the first information data, and generating corresponding second information data further includes: Detecting performance indicator data to be detected corresponding to the GPU, and generating first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing performance, memory capacity, video memory bit width, GPU power consumption, GPU operating frequency and video memory type corresponding to the GPU; Based on the first detection data, determine whether the performance indicator data corresponding to the GPU reaches the preset standard data, if so, execute the next step; otherwise, continue to perform self-detection.

4. The multi-module parallel accelerated image processing method suitable for GPU according to claim 1, characterized in that: The method of optimizing and processing the operating performance corresponding to the GPU in real time according to the second information data and generating corresponding third information data further includes: Based on the second information data, first code data corresponding to the first information data is generated and acquired, the first code data is optimized and processed, and second code data corresponding to the first information data is generated, wherein the first code data is code data to be optimized; and the second code data is optimized code data; Based on the second information data, a first data set corresponding to the first information data is generated and acquired, and the first data set is divided and processed, and a second data set corresponding to the first information data is generated, wherein the first data set is the current data set data of the GPU; and the second data set is a sub-data set corresponding to the first data set.

5. The multi-module parallel accelerated image processing method suitable for GPU according to claim 1 or 4, characterized in that: The method of optimizing and processing the operating performance corresponding to the GPU in real time according to the second information data and generating corresponding third information data further includes: Generate and obtain state data corresponding to the GPU, and allocate and process a second data set corresponding to the first information data; Based on the state data corresponding to the GPU, parallel computing is performed to process a second data set corresponding to the GPU.

6. The multi-module parallel accelerated image processing method suitable for GPU according to claim 1, characterized in that: Based on the GPU and in combination with the third information data, the multi-module parallel accelerated processing and rendering of the image data to be processed also includes: Combined with performance analysis tools, real-time estimation and generation of performance data corresponding to the GPU, and generation of corresponding evaluation reports based on the performance data; Based on the performance data and the evaluation report, the code data and the model data corresponding to the GPU are optimized and adjusted respectively.

7. A multi-module parallel accelerated image processing system suitable for GPU, characterized in that: The system is used to implement the multi-module parallel accelerated image processing method suitable for a GPU as claimed in any one of claims 1 to 6, and the system comprises: A data acquisition and generation unit, used to acquire first information data corresponding to the GPU, detect the operating performance of the GPU in real time based on the first information data, and generate corresponding second information data; wherein the first information data is basic data of the GPU, including: GPU parameter data, operating environment information data, power consumption status data and operating status data; the second information data is original operating performance indicator data corresponding to the GPU; A data parallel processing unit, configured to optimize and process the operation performance corresponding to the GPU in real time according to the second information data, and generate corresponding third information data; wherein the third information data is the index data corresponding to the GPU and after the operation performance optimization processing; The image acceleration processing unit is used for accelerating the processing and rendering of the image data to be processed in parallel using multiple modules based on the GPU and in combination with the third information data.

8. The multi-module parallel accelerated image processing system suitable for GPU according to claim 7, characterized in that: The data acquisition generation unit further includes: A first data generation module is used to generate and obtain model data and architecture data corresponding to the GPU, as well as data of tasks that the GPU currently needs to accelerate; A data monitoring and processing module, used to detect the working environment data corresponding to the GPU in real time, and monitor the power consumption state data corresponding to the GPU; A second data generation module is used to generate and obtain operation status information data corresponding to the GPU; wherein the operation status information data includes the usage rate data and memory occupancy data of the GPUD; And / or, the data acquisition generation unit further includes: a third data generating module, configured to detect the performance indicator data to be detected corresponding to the GPU, and generate first detection data corresponding to the performance indicator data to be detected; wherein the performance indicator data to be detected includes computing operation performance, memory capacity, video memory bit width, GPU power consumption, GPU operation frequency and video memory type corresponding to the GPU; A first data determination module, configured to determine whether performance indicator data corresponding to the GPU reaches preset standard data based on the first detection data; And / or, the data parallel processing unit further includes: a fourth data generating module, configured to generate and obtain first code data corresponding to the first information data based on the second information data, optimize the first code data, and generate second code data corresponding to the first information data, wherein the first code data is code data to be optimized; and the second code data is optimized code data; a fifth data generation module, configured to generate and obtain a first data set corresponding to the first information data based on the second information data, divide and process the first data set, and generate a second data set corresponding to the first information data, wherein the first data set is the current data set data of the GPU; and the second data set is a sub-data set corresponding to the first data set; And / or, the data parallel processing unit further includes: a sixth data generating module, configured to generate and obtain state data corresponding to the GPU, and allocate and process a second data set corresponding to the first information data; A data parallel computing processing module, used for parallel computing and processing a second data set corresponding to the GPU based on the state data corresponding to the GPU; And / or, the image acceleration processing unit further includes: A seventh data generation module, used to estimate and generate performance data corresponding to the GPU in real time in combination with the performance analysis tool, and generate a corresponding evaluation report based on the performance data; The data optimization and adjustment processing module is used to optimize and adjust the code data and model data corresponding to the GPU based on the performance data and the evaluation report.

9. A multi-module parallel accelerated image processing platform suitable for GPU, characterized in that: The invention comprises a processor, a memory and a multi-module parallel accelerated processing image platform control program suitable for a GPU; wherein the multi-module parallel accelerated processing image platform control program suitable for a GPU is executed by the processor, the multi-module parallel accelerated processing image platform control program suitable for a GPU is stored in the memory, and the multi-module parallel accelerated processing image platform control program suitable for a GPU implements the multi-module parallel accelerated processing image method suitable for a GPU as described in any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a multi-module parallel accelerated image processing platform control program suitable for a GPU, and the multi-module parallel accelerated image processing platform control program suitable for a GPU implements the multi-module parallel accelerated image processing method suitable for a GPU as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Method, apparatus and apparatus for optimizing system parameters, and readable medium

    CN109308246A

  • GPU performance bottleneck determination method and device, terminal and storage medium

    CN109800141A

  • High-performance server GPU performance bottleneck tuning method and device and storage medium

    CN112000472A

  • Performance optimization method based on domestic platform GPU

    CN115641249A

  • Intelligent interior design image rendering system

    CN117830489A