GPU-CPU Image Encoding Segmentation for Processing Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current encoding technologies do not effectively optimize processing between CPUs and GPUs, as GPUs require many instruction issuances for parallel processing, leading to inefficiencies in achieving results, especially when compared to CPUs which can execute instructions more efficiently.
Innovation Solution
An information processing apparatus that utilizes a CPU and GPU to encode images by obtaining blocks of pixels, removing spatial redundancy, analyzing data strings, and generating specifying information for compression, allowing the CPU to perform lossless compression processing based on the GPU's output, thereby optimizing encoding by dividing data strings and reducing the number of data items to be processed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If encoding processing is executed by a GPU using parallel processing, then processing capability is improved, but the number of instruction issuances increases and processing time increases
Solution Approach 1:
The patent segments the encoding processing into two distinct parts: (1) parallel processing for spatial redundancy removal executed by the GPU, and (2) sequential processing for compression executed by the CPU. This segmentation allows each processor to operate in its optimal mode, with the GPU handling parallelizable tasks and the CPU handling sequential compression tasks, thereby resolving the contradiction between parallel processing capability and actual processing time
Solution Approach 2:
The patent dynamically assigns different processing tasks to different processors based on the characteristics of each processing stage. The GPU is dynamically utilized for the spatial redundancy removal stage where parallel processing provides benefit, while the CPU is utilized for the compression stage where sequential processing is more efficient. This dynamic task assignment optimizes overall encoding performance by matching processor strengths to task requirements
2Manufacturing precision
If all data items are transferred from GPU to CPU for compression processing, then compression can be executed, but bandwidth usage increases and transfer time increases
Solution Approach 1:
The patent extracts and processes only the essential data items required for compression from the GPU output. The GPU performs spatial redundancy removal and identifies significant data items, then transfers only these extracted essential items to the CPU for compression processing. This extraction approach maintains compression accuracy by preserving necessary information while significantly reducing the volume of data transferred, thereby lowering bandwidth usage and energy consumption
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In an information processing apparatus, a GPU obtains a plurality of blocks which have a predetermined number of pixels and are obtained by dividing an encoding target image, and intermediate blocks for which a spatial redundancy is removed are generated for each block. The GPU analyzes a data string of the intermediate blocks, and generates specifying information for specifying positions of data for which a value is included in a predetermined range in the data string, and for each of the blocks, outputs at least a portion of the data of the intermediate blocks, and corresponding specifying information to a storage apparatus. A CPU, for each of the plurality of blocks, executes compression processing by referencing corresponding specifying information, and reading at least a portion of the data corresponding to the specifying information from the storage apparatus.