Kernel Offloading via Predictive Command List Batching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for scheduling kernels onto accelerator circuitry in heterogeneous systems result in poor compute utilization and runtime efficiency due to the high cost of generating and submitting command lists, leading to underutilization of accelerator resources.

Innovation Solution

The implementation of a kernel duration model and a subsequent kernel model, combined with a reinforcement learning model, predicts future kernel behavior to optimize command list generation, reducing the cost of command list creation and improving GPU utilization by scheduling kernels to run in parallel and completing them at similar times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If command lists are generated and submitted frequently to accelerator circuitry, then kernel offloading is achieved, but compute utilization and runtime efficiency deteriorate due to high generation and submission costs

Engineering Contradiction:
Improvekernel offloading efficiencyVSAvoidcommand list generation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by predicting future kernel behavior and command list requirements before actually generating command lists. The machine learning models predict kernel duration, occupancy, and future kernel arrivals, allowing the system to prepare and batch command lists in advance, reducing the frequency and cost of command list generation operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts command list generation strategies based on predicted kernel behavior and accelerator utilization patterns. The reinforcement learning model continuously adapts the batching and submission strategy, optimizing the balance between command list generation frequency and accelerator utilization based on real-time predictions and feedback.

Inventive Principle:
Principle #15Dynamics

2Power

If accelerator circuitry is used to speed up workload processing, then processing throughput is improved, but resource underutilization occurs due to inefficient command list scheduling

Engineering Contradiction:
Improveprocessing throughputVSAvoidaccelerator utilization
Core Design Contradiction:
PowerVSProductivity

Solution Approach 1:

The system implements feedback mechanisms where the reinforcement learning model receives information about actual kernel execution results, accelerator utilization patterns, and command list performance. This feedback is used to continuously refine predictions and adjust scheduling decisions, improving accelerator utilization over time by learning from actual system behavior and performance outcomes.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system changes key parameters such as command list batch size, submission timing, and kernel grouping strategies based on predicted workload characteristics and observed accelerator utilization. By dynamically adjusting these parameters, the system optimizes the balance between processing throughput and resource utilization, preventing both underutilization and excessive generation overhead.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If machine learning models are used to predict kernel behavior, then command list optimization is achieved, but system complexity increases

Engineering Contradiction:
Improvecommand list optimizationVSAvoidmodel execution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the machine learning functionality into distinct, specialized models: a kernel duration model for predicting execution time, a kernel occupancy model for predicting resource usage, and a reinforcement learning model for optimization decisions. This segmentation allows each model to be relatively simple and focused, reducing overall system complexity while maintaining predictive accuracy and optimization capability.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12001382B2Methods, apparatus, and articles of manufacture to generate command lists to be offloaded to accelerator circuitry
Publication Date: 2024.06.04 INTEL CORP
  • US12001382B2 patent drawing
  • US12001382B2 patent drawing
  • US12001382B2 patent drawing

AI summary

Methods, apparatus, systems, and articles of manufacture are disclosed to generate command lists to be offloaded to accelerator circuitry. An example apparatus includes kernel duration model circuitry to predict a duration of execution of a first kernel based on a first source location, a first name, a first property of a first argument, or an occupancy of the first kernel. The example apparatus includes subsequent kernel model circuitry to predict a tuple and a dependency of a second kernel based on a second source location, a second name, a second property of a second argument, or a time of submission of the previous kernel. The example apparatus includes reinforcement learning model circuitry to determine whether to bundle the first kernel into a command list based on the duration of execution of the first kernel, the tuple of the second kernel, or the dependency of the second kernel.