Graphics Processor CPU Core Arbitration for Resource Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems underutilize embedded processors, such as graphics processing units (GPUs), leading to inefficiencies in processing capabilities.

Innovation Solution

A system and method that provides access to graphics processor CPU cores for both graphics processors and central processing units (CPUs), allowing for the arbitration of requests to execute code on these cores, utilizing a dynamic pool of CPU resources and data structures like semaphores to manage availability and prioritize processing tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If embedded processors in graphics processors are dedicated solely to graphics processing, then graphics processing performance is improved, but processing capability utilization deteriorates

Engineering Contradiction:
Improvegraphics processing performanceVSAvoidprocessing capability utilization
Core Design Contradiction:
PowerVSProductivity

Solution Approach 1:

The patent makes the CPU cores in graphics processors multi-functional by allowing them to serve both graphics processing tasks and general-purpose computing tasks. The system enables the GPU's CPU cores to be dynamically allocated to either graphics workloads or CPU workloads based on system needs, transforming a single-function resource into a universal resource that can adapt to different processing requirements.

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

Solution Approach 2:

The patent implements dynamic allocation of CPU cores between graphics processing and general-purpose computing. The system continuously monitors workload demands and dynamically assigns CPU core availability to either the GPU or CPU based on current processing needs, allowing the resource allocation to adapt and change over time rather than being fixed.

Inventive Principle:
Principle #15Dynamics

2Productivity

If CPU cores in graphics processors are made accessible to both GPU and CPU, then resource utilization is improved, but system complexity deteriorates

Engineering Contradiction:
Improveresource utilizationVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary arbitration mechanism that manages access to shared CPU cores between the GPU and CPU. This arbitration layer acts as a mediator that receives requests from both processors, determines priority and availability, and grants access appropriately. The intermediary abstracts the complexity of resource management, allowing both GPU and CPU to access shared cores without direct conflicts.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the arbitration logic continuously monitors the state of CPU cores, the needs of the GPU, and the needs of the CPU. Based on this feedback, the system dynamically adjusts resource allocation decisions, creating a closed-loop control system that optimizes resource utilization while managing complexity through adaptive response to system conditions.

Inventive Principle:
Principle #23Feedback

3Productivity

If arbitration mechanisms are implemented for shared CPU cores, then resource allocation efficiency is improved, but processing time deterioration occurs

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-establishing arbitration rules, priority schemes, and resource allocation policies before processing workloads. The system pre-configures how CPU cores should be allocated under different conditions, allowing arbitration decisions to be made based on pre-determined criteria rather than requiring complex real-time negotiations, thus reducing arbitration overhead and processing time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8279229B1System, method, and computer program product for providing access to graphics processor CPU cores, to both a graphics processor and a CPU
Publication Date: 2012.10.02 NVIDIA CORP
  • US8279229B1 patent drawing
  • US8279229B1 patent drawing
  • US8279229B1 patent drawing

AI summary

A system, method, and computer program product are presented for providing access to graphics processor central processing unit (CPU) cores, to both a graphics processor and a central processing unit. In operation, access is provided to a plurality of central processing unit cores of a graphics processor, to both the graphics processor and a central processing unit. Additionally, first requests are received from the central processing unit to execute first code utilizing at least one of the central processing unit cores of the graphics processor. Furthermore, second requests are received from the graphics processor to execute second code utilizing at least one of the central processing unit cores of the graphics processor. Still yet, there is arbitrating among the first requests and the second requests.