I/O Channel Abstraction for Accelerator Device Kernels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Accelerator device kernels in data centers are limited in their ability to communicate and cooperate with a large percentage of other accelerator devices due to their restricted communication faculties, often being confined to specific physical communication paths, which hinders the utilization of disaggregated resources.

Innovation Solution

The implementation of a system that provides I/O channel abstraction for accelerator device kernels, allowing them to establish logical communication paths across various physical communication paths, optimizing communication capacity and quality of service based on availability data and quality of service parameters, enabling cooperation with a broader range of devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If accelerator device kernels are configured to establish connections with other accelerator device kernels through physical communication paths, then communication capability is improved, but device complexity increases and adaptability decreases

Engineering Contradiction:
Improvecommunication capabilityVSAvoidkernel configuration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a communication abstraction layer that acts as an intermediary between the kernel and physical communication paths. This abstraction layer handles the complexity of establishing connections and managing communication protocols, allowing kernels to communicate with diverse accelerator devices without requiring complex configuration. The abstraction layer translates high-level communication requests into specific protocol implementations, thereby reducing kernel configuration complexity while maintaining communication capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a universal communication interface that enables accelerator device kernels to communicate with multiple types of accelerator devices through different physical communication paths (PCIe, CXL, NVLink, etc.). This universal interface handles protocol translation and adaptation, allowing a single kernel to work with various device types without requiring separate configuration for each communication path, thus improving adaptability without proportionally increasing complexity.

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

2Adaptability or versatility

If accelerator device kernels are limited to specific physical communication paths, then device complexity is reduced, but adaptability and resource utilization worsen

Engineering Contradiction:
Improveresource accessibilityVSAvoidcommunication path management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The communication abstraction layer serves as a mediator that manages multiple physical communication paths behind a unified interface. When a kernel needs to access resources on another accelerator device, the abstraction layer automatically selects the appropriate physical communication path based on availability, performance requirements, and current system state. This shields kernels from the complexity of managing multiple communication paths while enabling broad resource accessibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the communication functionality into distinct layers: the kernel layer that defines communication needs, the abstraction layer that manages communication paths and protocols, and the physical layer that handles specific communication technologies. This segmentation allows each layer to operate independently, reducing the complexity burden on kernels while enabling access to diverse resources through the coordinated work of lower layers.

Inventive Principle:
Principle #1Segmentation

3Reliability

If communication protocols are hardcoded in kernel by developer, then communication reliability is improved, but adaptability to different accelerator devices worsens

Engineering Contradiction:
Improvecommunication reliabilityVSAvoiddevice compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic protocol selection where the communication abstraction layer determines which protocol to use based on the target device type and communication requirements, rather than having fixed protocols in the kernel. The system can dynamically adapt the communication protocol at runtime, selecting from PCIe, CXL, NVLink, or other protocols as needed. This dynamic approach maintains communication reliability by using appropriate protocols for each device while achieving broad device compatibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The communication abstraction layer changes communication parameters (protocol type, data format, transfer size) based on the target accelerator device and workload requirements. Instead of hardcoding single protocol parameters in the kernel, the system adjusts these parameters dynamically according to the specific communication scenario, ensuring reliable communication with diverse devices while maintaining adaptability to different device types and communication conditions.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10579547B2Technologies for providing I/O channel abstraction for accelerator device kernels
Publication Date: 2020.03.03 ALTERA CORP
  • US10579547B2 patent drawing
  • US10579547B2 patent drawing
  • US10579547B2 patent drawing

AI summary

Technologies for providing I/O channel abstraction for accelerator device kernels include an accelerator device comprising circuitry to obtain availability data indicative of an availability of one or more accelerator device kernels in a system, including one or more physical communication paths to each accelerator device kernel. The circuitry is also configured to receive a request to establish a logical communication path between a kernel of the present accelerator device and another accelerator device kernel and establish, in response to the request and as a function of the obtained availability data, the logical communication path between the kernel of the present accelerator device and the other accelerator device kernel.