Hardware Acceleration Managing Node Dynamic Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solutions for remote hardware acceleration require pre-configuration and static association of compute units with specific acceleration devices, limiting flexibility in accessing acceleration devices.

Innovation Solution

A hardware acceleration managing node mediates requests for hardware acceleration by selecting and managing multiple hardware acceleration devices, allowing dynamic and transparent access without pre-configuration, enabling flexible access and sharing among multiple applications and servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If pre-configuration and static association of compute units with specific acceleration devices is used, then reliable access to acceleration devices is ensured, but flexibility in accessing acceleration devices is limited

Engineering Contradiction:
Improveaccess reliabilityVSAvoidaccess flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

A managing node is introduced as an intermediary between compute units and hardware acceleration devices. The managing node receives acceleration requests from compute units, selects appropriate acceleration devices dynamically, and manages the allocation without requiring pre-configuration or static association between compute units and specific acceleration devices, thereby providing both reliable and flexible access

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If multiple hardware acceleration devices are managed individually, then device-specific control is maintained, but resource utilization efficiency decreases

Engineering Contradiction:
Improvedevice controlVSAvoidresource utilization efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The managing node serves as a universal interface that handles multiple hardware acceleration devices through a single centralized system. It receives requests from multiple compute units and dynamically allocates them to appropriate acceleration devices based on current system state and device availability, enabling efficient resource utilization while maintaining ease of operation through a unified management interface

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

Data Source

PatentEP3791274B1Method and node for managing a request for hardware acceleration by means of an accelerator device
Publication Date: 2024.05.01 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP3791274B1 patent drawingFigure 1
  • EP3791274B1 patent drawingFigure 2
  • EP3791274B1 patent drawingFigure 3

AI summary

A method and a hardware acceleration managing node (110) for managing a request for hardware acceleration "HA" by means of at least one hardware acceleration device (120, 121, 122) managed by the hardware acceleration managing node (110) are disclosed. The hardware acceleration managing node (110) receives (A020), from a HA interfacing node (130), the request for hardware acceleration of processing of source data. The hardware acceleration managing node (110) sends an indication of a source memory location(s) for storing of the source data. The hardware acceleration managing node (110) selects one or more hardware acceleration devices (120, 121, 122). The hardware acceleration managing node (110) receives a chunk of code to be accelerated. The hardware acceleration managing node (110) sends, to said one hardware acceleration device (120, 121, 122), a set of acceleration instructions related to the chunk of code and the indication of the source memory location. The hardware acceleration managing node (110) receives an indication of a result memory location indicating result data. The hardware acceleration managing node (110) sends an indication of completed hardware acceleration to the HA interfacing node (130). A corresponding computer program (303) and a computer program carrier (305) are also disclosed.