Syscall Mechanism for GPU to CPU Task Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems face challenges in efficiently processing system calls from graphics processing units (GPUs) to central processing units (CPUs), including memory latency, power consumption, and overhead due to separate memory systems and phased execution approaches, which limit the fluid use of GPUs for general computation.

Innovation Solution

A unified computing system that allows GPUs to request CPU processing through a syscall mechanism, eliminating the need for phased execution by using mailboxes for communication and enabling direct CPU execution of tasks, thereby improving processing efficiency and reducing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPUs operate with separate memory systems and phased execution, then GPU computational capabilities can be utilized, but memory latency and processing overhead increase significantly

Engineering Contradiction:
ImproveGPU computational throughputVSAvoidmemory latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent merges the CPU and GPU memory systems into a unified memory architecture, allowing both processors to access the same memory space without the latency penalties of separate memory systems. This eliminates the need for complex memory management and reduces access time significantly.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent enables continuous execution on the GPU without requiring phased execution and CPU intervention between phases. The GPU can maintain continuous computational workloads by directly accessing unified memory, eliminating the overhead of phase transitions and context switching.

Inventive Principle:
Principle #20Continuity of useful action

2Ease of operation

If phased execution approach is used for GPU programs, then CPU can manage GPU tasks, but significant overhead is introduced slowing down processing

Engineering Contradiction:
ImproveCPU-GPU task managementVSAvoidprocessing speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent eliminates phased execution by allowing the GPU to execute programs continuously without requiring CPU intervention between phases. The unified memory architecture enables the GPU to autonomously manage its execution flow, maintaining continuous computational activity and eliminating phase transition overhead.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The GPU is empowered to autonomously access and manage data in the unified memory system without requiring CPU mediation for each memory access. This self-service capability eliminates the overhead of CPU-GPU context switching and phase management.

Inventive Principle:
Principle #25Self-service

3Stability of the object's composition

If work items are launched for each phase with same work group layout, then GPU execution can be structured, but additional processing overhead is required to track status

Engineering Contradiction:
Improveexecution structureVSAvoidtracking overhead
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The patent eliminates the need to re-launch work items for each phase by enabling continuous GPU execution. The unified memory architecture allows the GPU to maintain its execution state and continue processing without interruption, removing the complexity of tracking and re-launching work items across phases.

Inventive Principle:
Principle #20Continuity of useful action

4Adaptability or versatility

If discrete chip arrangement is used for CPU and GPU, then system architecture flexibility is improved, but chip-to-chip interface overhead increases memory latency and power consumption

Engineering Contradiction:
Improvesystem architecture flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by stationary object

Solution Approach 1:

The patent merges the CPU and GPU into a single integrated processor package with shared memory, eliminating the need for chip-to-chip interfaces. This integration dramatically reduces power consumption by removing the energy overhead of external communication interfaces while maintaining architectural flexibility through software-based task distribution.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9170820B2Syscall mechanism for processor to processor calls
Publication Date: 2015.10.27 ADVANCED MICRO DEVICES INC
  • US9170820B2 patent drawing
  • US9170820B2 patent drawing
  • US9170820B2 patent drawing

AI summary

Provided is a method for processing system calls from a GPU to a CPU. The method includes a GPU storing a plurality of tasks in a memory, with each task representing a function to be performed on the CPU. The method also includes generating a CPU interrupt, and processing of the stored plurality of tasks by the CPU.