Accelerator Work Partitioning With Dynamic Resource Orchestration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Accelerator devices often remain idle due to static allocation of shared resources, leading to resource wastage and inefficiency in workload execution.

Innovation Solution

Implementing a system that dynamically divides work across multiple accelerator devices by analyzing job requirements and configuring each device to maximize parallel task execution, utilizing a micro-orchestrator logic unit and shared virtual memory for efficient data sharing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If static allocation of shared resources is used among accelerator devices, then resource assignment is simple and stable, but resource utilization is low and accelerator devices remain idle

Engineering Contradiction:
Improveresource utilizationVSAvoidresource allocation complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent implements dynamic resource allocation where the micro-orchestrator logic unit continuously monitors workload requirements and reconfigures shared resources among accelerator devices in real-time. This allows the system to adapt resource distribution dynamically based on actual demand, transforming the static allocation model into a dynamic one that maximizes utilization while maintaining manageable complexity through automated control.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The micro-orchestrator logic unit serves as an intermediary between the workload management system and accelerator devices. It receives workload requirements, determines optimal resource distribution, and configures shared resources accordingly. This intermediary layer abstracts the complexity of resource management from both the workload system and accelerator devices, enabling efficient dynamic allocation without requiring complex changes to existing components.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If workload is allocated with required processors and memory for the duration of workload, then resource availability is guaranteed, but accelerator devices remain idle leading to resource wastage

Engineering Contradiction:
Improveresource availabilityVSAvoidresource wastage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent creates a pool of shared accelerator resources that can be universally accessed by multiple workloads. Instead of dedicating specific accelerator devices to individual workloads for their entire duration, the system allows any accelerator device in the pool to serve any workload that requires acceleration. This multi-functional approach ensures resource availability when needed while preventing idle wastage by allowing resources to be reassigned to other workloads when not in use.

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

Solution Approach 2:

The system dynamically allocates accelerator resources from a shared pool based on real-time workload requirements. The micro-orchestrator logic unit continuously monitors which workloads need acceleration and assigns available accelerator devices accordingly. This dynamic allocation ensures that resources are available when workloads need them while automatically reducing idle time by reassigning resources to new workloads as they arrive or existing workloads complete.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If accelerator devices are used at any point of time, then flexibility in workload execution is improved, but resource coordination and management becomes complex

Engineering Contradiction:
Improveworkload execution flexibilityVSAvoidresource coordination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The micro-orchestrator logic unit acts as an intermediary that manages the complexity of coordinating multiple accelerator devices and workloads. It receives execution requests, determines which accelerator devices are available and suitable, and coordinates their assignment. This intermediary layer handles the complex coordination logic centrally, allowing individual accelerator devices and workloads to remain simple while achieving flexible resource sharing through the orchestrator's management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the micro-orchestrator logic unit monitors the state of accelerator devices and workloads, and uses this information to make dynamic allocation decisions. The orchestrator receives feedback about resource availability, workload requirements, and execution status, then adjusts resource assignment accordingly. This feedback-driven approach enables flexible adaptation to changing conditions while keeping the coordination logic manageable through iterative decision-making based on current system state.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12288101B2Technologies for dividing work across accelerator devices
Publication Date: 2025.04.29 INTEL CORP
  • US12288101B2 patent drawing
  • US12288101B2 patent drawing
  • US12288101B2 patent drawing

AI summary

Technologies for dividing work across one or more accelerator devices include a compute device. The compute device is to determine a configuration of each of multiple accelerator devices of the compute device, receive a job to be accelerated from a requester device remote from the compute device, and divide the job into multiple tasks for a parallelization of the multiple tasks among the one or more accelerator devices, as a function of a job analysis of the job and the configuration of each accelerator device. The compute engine is further to schedule the tasks to the one or more accelerator devices based on the job analysis and execute the tasks on the one or more accelerator devices for the parallelization of the multiple tasks to obtain an output of the job.