Multi-View GPU Wave Scheduling for Parallel VR Image Rendering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image drawing technologies for generating left and right images in virtual reality are inefficient due to separate calculations for each viewpoint, leading to complex processes and lower drawing efficiency.
Innovation Solution
A multi-view image generation apparatus and GPU that includes a processing unit, wave construction unit, cache units, and raster processing unit to assemble and process geometric primitives in parallel, utilizing wave management to improve data sharing and update vertex information in real time, facilitating efficient image generation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If separate calculations are performed for left and right viewpoints, then each viewpoint can be processed independently, but the calculation process becomes complicated and drawing efficiency decreases
Solution Approach 1:
The patent merges the processing of multiple viewpoints into a single unified calculation process. By combining the vertex transformation calculations for left and right viewpoints into one unified wave execution, the system eliminates redundant computations while maintaining independent processing capability. The unified wave processes both viewpoints simultaneously using the same vertex data and transformation logic, thereby improving drawing efficiency without sacrificing operational independence.
2Adaptability or versatility
If drawing tasks are performed separately for each viewpoint, then view-specific calculations can be optimized, but the overall calculation process becomes more complex
Solution Approach 1:
The patent segments the drawing task into distinct waves, where each wave is responsible for processing a specific viewpoint. This segmentation allows view-specific optimizations to be applied independently within each wave while maintaining a unified overall process. The wave construction unit creates separate waves for different viewpoints, enabling targeted optimization without increasing overall process complexity.
Solution Approach 2:
The patent implements a universal wave execution mechanism that can handle multiple viewpoints through a single unified process. The wave management unit schedules and executes waves that are designed to be multi-functional, capable of processing different viewpoints using the same underlying calculation framework. This universality reduces calculation process complexity while maintaining adaptability for view-specific optimizations.
3Reliability
If multiple views are processed in sequence, then each view can be completed fully before moving to the next, but processing time increases
Solution Approach 1:
The patent implements continuous useful action by executing multiple waves in parallel without idle gaps between them. The wave management unit schedules waves to run concurrently, ensuring that the processing of different viewpoints continues without interruption. This parallel execution maintains complete view processing reliability while significantly reducing total processing time compared to sequential methods.
Solution Approach 2:
The patent performs preliminary actions by pre-construction of waves during the wave construction phase. All necessary calculation logic and transformation parameters are prepared in advance during wave construction, allowing the execution phase to proceed with minimal overhead. This preliminary preparation enables parallel execution of multiple viewpoints without sacrificing processing completeness.
Data Source
AI summary
The present disclosure relates to a multi-view image generation apparatus and method, and a graphics processing unit. Waves are constructed according to primitive information and vertex information of geometric primitives to generate a plurality of waves for parallel processing, and the waves are scheduled by a wave management unit for execution, which can improve execution efficiency. Since the primitive information of the geometric primitives is stored in a first cache unit, data sharing between waves can be implemented. During the parallel processing of the waves, vertex information in a second cache unit is updated in real time according to vertex address information outputted by the waves, so that a raster processing unit can read the latest vertex information from the second cache unit. Finally, through an image generation unit, a multi-view image is generated according to image colors obtained by executions of the waves and views corresponding to pixel points.


