Virtualized GPU Core Segmentation for Parallel Graphics Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computers lack the necessary processing power to efficiently handle process-intensive applications such as 3D geospatial graphics and AI, leading to prolonged processing times and potential missed deadlines.
Innovation Solution
A highly parallel virtualized graphics processing system comprising a central processing unit (CPU) and a virtualization stack with multiple GPU cores, where the GPU cores are loaded with low-level graphics routines and virtualized GPUs are assigned tasks based on workload requirements, enabling efficient processing of graphics tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Power
If conventional computers are used for process-intensive applications, then device simplicity is maintained, but processing power and productivity are insufficient
Solution Approach 1:
The system segments processing tasks into two distinct parts: the CPU handles general-purpose computing and application logic, while the GPU handles parallel graphics and compute tasks. This segmentation allows each processor to specialize in its strengths, with the GPU providing massive parallel processing capability through thousands of cores organized in streaming multiprocessors, thereby achieving high processing power for graphics-intensive applications without requiring the entire system to be redesigned for each specific task
Solution Approach 2:
The patent introduces a display list processor as an intermediary component between the CPU and the GPU display pipeline. This intermediary receives display lists from the CPU, processes them through a series of stages (including geometry processing, rasterization, and pixel processing), and outputs rendered frames to the display. This mediator enables the CPU to generate graphics commands at its own pace while the display list processor handles the complex parallel processing required for rendering, thus achieving high processing power without direct CPU-GPU synchronization overhead
2Speed
If conventional processors handle graphics tasks, then system simplicity is maintained, but processing speed and productivity are too slow
Solution Approach 1:
The GPU architecture segments its processing units into multiple streaming multiprocessors (SMs), each containing numerous thread blocks and cores. This segmentation allows the GPU to execute thousands of threads simultaneously across multiple SMs, achieving massive parallel processing speed for graphics tasks. Each SM can independently execute thread blocks, enabling the system to process multiple geometry primitives, perform rasterization, and execute pixel operations in parallel, thereby achieving high processing speed for 3D graphics rendering and compute-intensive applications
Solution Approach 2:
The patent transitions from the CPU's sequential, von Neumann architecture to the GPU's parallel, data-parallel architecture. This dimensional change in processing approach allows the GPU to execute the same operation on multiple data elements simultaneously (Single Instruction Multiple Data - SIMD model). The GPU organizes thousands of cores in a two-dimensional array structure with multiple thread blocks per SM, enabling massivel parallel processing speed that is orders of magnitude faster than conventional CPUs for suitable workloads such as graphics rendering and matrix operations
3Productivity
If more processing power is added to conventional computers, then productivity improves, but device complexity and energy consumption increase
Solution Approach 1:
The system segments the computing workload based on task characteristics: the CPU handles sequential, control-flow-intensive tasks with lower energy consumption per core, while the GPU handles parallel, compute-intensive graphics tasks by utilizing its specialized architecture. This segmentation allows the system to achieve high productivity for graphics applications by directing appropriate workloads to the most energy-efficient processor for that task type, rather than over-provisioning the CPU for all workloads
Solution Approach 2:
The GPU is designed as a universal processor that can handle multiple types of workloads including 3D graphics rendering, 2D graphics, video encoding/decoding, and general-purpose parallel computing (GPGPU). This multi-functionality allows a single GPU device to provide high productivity across diverse application types without requiring separate specialized hardware for each function, thereby improving energy efficiency by consolidating multiple processing functions into one energy-optimized device
4Loss of time
If conventional processors are used for 3D graphics rendering, then system simplicity is maintained, but processing time is too long and deadlines are missed
Solution Approach 1:
The display list processor segments the graphics rendering pipeline into distinct processing stages: geometry processing stage (transforming 3D vertices to screen coordinates), rasterization stage (converting geometric primitives to pixel fragments), and pixel processing stage (applying shading and effects). This segmentation allows each stage to be optimized independently and execute in parallel pipelines, dramatically reducing the time required to render 3D graphics scenes compared to conventional sequential processing while maintaining manageable system complexity through modular stage design
Data Source
AI summary
The present disclosure is directed to a processing system with a virtualized graphics processor for highly parallel processing of graphics tasks as well as other computing tasks. The processing system includes a central processing unit (CPU) configured with a virtualization stack which includes a graphics processing unit (GPU) having hundreds to thousands of GPU cores virtualized into virtual machines (VMs). The GPU cores are loaded with low-level programming routines for graphics tasks. Different GPUs are loaded with different types of programming routines based on their respective dedicated graphics tasks. The cores are segmented into VMs based on the graphics task. By utilizing virtualized GPUs, highly parallel processing of graphics tasks can be achieved.


