Abstract Graphic Resource for Multi-GPU Viewpoint Rendering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current multi-GPU rendering techniques are limited to specific scenarios, such as Mosaic mode for multiscreen rendering and SLI/CrossFire for video games, and do not allow for efficient utilization of multiple viewpoints or direct addressing of specific GPUs, leading to complexity and restricted computing resource utilization.
Innovation Solution
A computer-implemented method that uses an abstract graphic resource to manage multiple GPUs, allowing for the binding of viewpoints to specific GPUs and simplifying the rendering process by using a unique identifier for each GPU, thereby reducing the complexity of handling multiple Resource Names and enabling simultaneous rendering of multiple viewpoints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple GPUs are used for rendering, then rendering performance and computing resource utilization are improved, but system complexity and difficulty of managing multiple graphic resources increase
Solution Approach 1:
The patent introduces an abstract graphic resource as an intermediary layer between the render engine and multiple physical GPUs. This abstract resource manages and coordinates multiple underlying graphic resources (buffers, textures, vertex arrays) across different GPUs, allowing the render engine to interact with a unified interface while the abstract resource handles the complexity of distributing and synchronizing rendering tasks across multiple physical devices.
Solution Approach 2:
The abstract graphic resource serves multiple functions simultaneously: it acts as a container for graphic data, a manager for GPU assignment, a coordinator for synchronization, and an interface for the render engine. This multi-functional design consolidates what would otherwise require separate management systems for each GPU, reducing overall system complexity while enabling parallel rendering operations.
2Adaptability or versatility
If traditional multi-GPU techniques (SLI, Mosaic mode) are used, then specific rendering scenarios are supported, but flexibility and adaptability to different rendering configurations are limited
Solution Approach 1:
The patent segments the graphic resource management into distinct layers: the abstract graphic resource layer that provides unified management, and the underlying physical GPU layer that handles specific rendering operations. This segmentation allows different rendering configurations (single GPU, multi-GPU, different viewports) to be implemented by simply changing how the abstract resource is instantiated and configured, without requiring different fundamental approaches for each scenario.
Solution Approach 2:
The system dynamically assigns and reassigns graphic resources to different GPUs based on rendering requirements. The abstract graphic resource can adapt its internal structure and GPU mappings in real-time, allowing the system to transition between different rendering configurations (e.g., from single-GPU to multi-GPU, or changing which GPU handles which viewport) without requiring system reconfiguration or mode switching.
3Quantity of substance
If multiple viewpoints are rendered simultaneously, then rendering coverage and information completeness are improved, but resource management complexity and coordination overhead increase
Solution Approach 1:
The patent merges the management of multiple viewpoint renderings into a single abstract graphic resource structure. Instead of managing each viewpoint's graphic resources separately, the abstract resource consolidates buffers, textures, and vertex arrays into unified structures that can be shared and coordinated across multiple GPUs and viewpoints, reducing redundancy and simplifying synchronization.
Solution Approach 2:
The system creates copies of the abstract graphic resource structure for each GPU and viewpoint combination, while maintaining centralized coordination. Each GPU receives a copy of the necessary graphic data through the abstract resource's copy mechanism, but the abstract resource itself maintains a single source of truth for resource allocation and synchronization, minimizing coordination overhead while enabling parallel rendering of multiple viewpoints.
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
The invention notably relates to a computer-implemented method for managing a plurality of graphic cards, a graphic card comprising one or more graphic processing units, comprising loading a scene in a Render Engine, the scene comprising at least one graphic data to be used for rendering a view of the scene; creating an abstract graphic resource for a graphic resource of the at least one graphic data, the abstract graphic resource storing an identifier of a graphic resource for at least one of graphic card; copying, on the said at least one graphic card, the said graphic resource of the at least one graphic data; providing to the Render Engine with an access to the abstract graphic resource for handling the said graphic resource.