Tightly Coupled Accelerator Context Switching Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional co-processors in computing systems are not tightly coupled with general purpose CPU cores, leading to significant communication latencies and inefficient use of resources, limiting their ability to perform fine-grained tasks due to separate memory spaces and external device driver access.

Innovation Solution

The integration of tightly coupled accelerators with general purpose CPU cores, using Intel ISA instructions like CPUID, XSAVE, and XRSTOR to manage state information and memory allocation, allowing accelerators to operate within the same memory space as the CPU core and eliminating the need for expensive driver calls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional co-processors are used as separate external devices, then device independence and standard device driver access are maintained, but communication latency increases significantly and fine-grained task execution becomes inefficient

Engineering Contradiction:
Improvecommunication latencyVSAvoidsystem architecture complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent merges the accelerator with the CPU core by integrating it into the same die and memory space, eliminating the external device connection. This consolidation reduces communication latency by allowing direct access to CPU registers and memory without external bus transactions, while the shared memory space eliminates the need for separate device driver layers.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The accelerator is designed to operate within the universal memory space and addressing scheme of the CPU core, allowing it to function as both a standalone computation unit and an integrated component. This multi-functionality enables the accelerator to handle both fine-grained tasks (low latency) and coarse-grained tasks (traditional workloads), resolving the contradiction between speed and versatility.

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

2Productivity

If traditional co-processors operate in separate memory spaces, then memory isolation and device independence are maintained, but task offloading efficiency decreases and driver communication overhead increases

Engineering Contradiction:
Improvetask execution efficiencyVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines the accelerator's memory space with the CPU's address space, creating a unified memory environment. This merger allows the accelerator to access memory and registers directly through standard CPU addressing mechanisms, eliminating the need for separate memory management and reducing driver communication overhead while improving task execution efficiency.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If accelerators are tightly coupled with CPU cores, then communication latency is reduced and fine-grained task execution is enabled, but the complexity of state management and context switching increases

Engineering Contradiction:
Improvetask response speedVSAvoidstate management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The accelerator utilizes the CPU's existing extension mechanism (XCRO register and XSAVE/XRSTOR instructions) for state management, making the accelerator compatible with the universal context switching infrastructure already present in the CPU. This approach enables fast task response while avoiding the need for separate, complex state management hardware or software layers.

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

4Ease of operation

If traditional co-processors are accessed through device drivers, then device independence and portability are maintained, but communication overhead increases and fine-grained operations become impractical

Engineering Contradiction:
Improveprogrammer accessibilityVSAvoiddriver call latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent merges the accelerator into the CPU core architecture, allowing programmers to access accelerator functions directly through standard CPU instructions without device driver intervention. This integration maintains ease of operation by using familiar instruction sets while eliminating the time-consuming driver call overhead that plagues traditional co-processor access.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP2831721B1Context switching mechanism for a processing core having a general purpose CPU core and a tightly coupled accelerator
Publication Date: 2020.08.26 INTEL CORP
  • EP2831721B1 patent drawingFigure 1
  • EP2831721B1 patent drawingFigure 2
  • EP2831721B1 patent drawingFigure 3

AI summary

An apparatus is described having multiple cores, each core having: a) an accelerator; and, b) a general purpose CPU coupled to the accelerator. The general purpose CPU has functional unit logic circuitry to execute an instruction that returns an amount of storage space to store context information of the accelerator.