Processor Work Launching API State Object

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer systems waste clock cycles due to the CPU needing to wait for co-processors like GPUs to complete tasks before initiating subsequent tasks, leading to inefficiencies in processing power utilization.

Innovation Solution

A method for launching workloads directly on a processor using a work launching API that initializes a state object, populates it with data, and triggers workload execution, allowing for independent task management without CPU intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the CPU launches tasks on the GPU sequentially, then task execution can be initiated, but clock cycles are wasted due to the CPU waiting for task completion

Engineering Contradiction:
Improvetask execution throughputVSAvoidCPU waiting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The GPU is empowered to autonomously launch and manage its own tasks through a self-service mechanism. The GPU maintains a task queue and can independently initiate task execution without requiring CPU intervention for each task launch, allowing the GPU to service itself and eliminate the CPU's waiting time while maintaining high task execution throughput

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A task queue data structure serves as an intermediary between the CPU and GPU task management systems. The CPU can populate this queue with tasks, and the GPU can independently retrieve and execute tasks from this queue without requiring synchronous CPU-GPU interaction for each task launch, thereby reducing CPU waiting time while maintaining productivity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9268601B2API for launching work on a processor
Publication Date: 2016.02.23 NVIDIA CORP
  • US9268601B2 patent drawing
  • US9268601B2 patent drawing
  • US9268601B2 patent drawing

AI summary

One embodiment of the present invention sets forth a technique for launching work on a processor. The method includes the steps of initializing a first state object within a memory region accessible to a program executing on the processor, populating the first state object with data associated with a first workload that is generated by the program, and triggering the processing of the first workload on the processor according to the data within the first state object.