GPU Resource Sharing for Duplicate Static Memory Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics APIs struggle with sharing resources between application instances due to lack of system driver access to resource content and inconsistent memory management, leading to inefficient memory utilization and reduced application density.

Innovation Solution

Systems and methods that utilize graphics processing units (GPUs) to compute resource identifiers and manage memory allocation, allowing transparent resource sharing by identifying shareable resources and consolidating duplicates, thereby optimizing memory usage and increasing application density.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If applications manage their own memory allocations and resource bindings, then applications have greater control over resource management, but system drivers cannot access resource content to determine shareability

Engineering Contradiction:
Improveapplication controlVSAvoidresource content access
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent introduces an intermediary component that sits between the application and the resource content. This intermediary allows the system to obtain resource identifiers and metadata without requiring direct access to the resource content itself, thus maintaining application control while enabling shareability detection

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical approach of directly accessing resource content with a computational system that uses resource identifiers, hashes, and metadata to determine shareability. This substitution allows the system to function without breaking the application's control over its resources

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If multiple copies of resources are stored in physical memory for different application instances, then each application has dedicated resources, but memory utilization is inefficient

Engineering Contradiction:
Improvededicated resourcesVSAvoidmemory utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple identical resource copies into a single shared physical memory location. By using resource identifiers and hashing, the system can determine when different applications have identical resources and consolidate them, maintaining dedicated access for each application while reducing overall memory consumption

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent makes physical memory locations universal by allowing them to serve multiple applications simultaneously. Through virtual memory mapping and resource identification, a single physical memory location can be shared across multiple application instances that have identical resource requirements

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If system drivers manage resource associations, then resource sharing is easier to implement, but modern graphics APIs require application-level control

Engineering Contradiction:
Improveresource sharingVSAvoidmemory management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer that bridges the gap between system driver resource sharing capabilities and application-level control requirements. This intermediary component enables resource sharing functionality while maintaining the modern graphics API architecture where applications control their own resources

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent enables applications to self-identify their resource shareability through metadata and resource identifiers. Rather than requiring complex system driver intervention, applications can declare their own shareability status, reducing the complexity of system-wide resource management

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260056784A1Resource sharing for content delivery systems and applications
Publication Date: 2026.02.26 NVIDIA CORP
  • US20260056784A1 patent drawing
  • US20260056784A1 patent drawing
  • US20260056784A1 patent drawing

AI summary

In various examples, static resources—or physical memory locations storing the static resources—may be shared between instances of an application(s) running in a distributed environment. For instance, the disclosed systems and methods may determine whether application resources are shareable (e.g., static or dynamic) by evaluating metadata associated with the resources. In some examples, the systems may allocate a portion (e.g., a range) of a virtual memory associated with an instance of the application for use as a binding target for a static resource. The portion of the virtual memory may then be mapped to a physical memory allocation storing the static resource. In this way, multiple virtual memory portions for multiple instances of the application may be mapped to a same physical memory allocation, and the static resource may be shared between the different application instances.