Hierarchical SoC Workload Allocation for Balanced NIC Port Traffic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Balancing input/output (IO) data traffic across network paths in hardware processing systems is challenging, particularly in distributed computing platforms, leading to inefficiencies, increased latency, and reduced bandwidth due to continuous monitoring and adjustment of load balancing across multiple network ports.

Innovation Solution

A hierarchical workload allocation method that divides computer workloads across hardware accelerators, network interface controllers (NICs), and network ports, managed by a load balancing controller to ensure even distribution and minimize bottlenecks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If continuous monitoring and adjustment of load balancing across multiple network ports is performed, then load distribution is optimized, but system efficiency decreases and latency increases

Engineering Contradiction:
Improveload distribution optimizationVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the load balancing function into hierarchical levels: a load balancing controller that operates at the system level to divide workloads across multiple hardware accelerators, and individual hardware accelerators that manage their own internal load balancing. This segmentation allows each component to operate independently with optimized local decisions, eliminating the need for continuous system-wide monitoring and adjustment, thereby resolving the contradiction between reliable load distribution and system efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each hardware accelerator is equipped with its own load balancing capability, enabling it to autonomously manage its own workload distribution without requiring continuous intervention from a central controller. The hardware accelerators self-adjust their internal resource allocation based on local conditions, eliminating the inefficiency of continuous external monitoring and adjustment while maintaining optimized load distribution

Inventive Principle:
Principle #25Self-service

2Productivity

If hierarchical workload allocation is implemented across hardware accelerators, NICs, and network ports, then bandwidth capabilities are enhanced, but device complexity increases

Engineering Contradiction:
Improvebandwidth capabilitiesVSAvoidworkload allocation structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements segmentation at multiple hierarchical levels: the load balancing controller divides workloads into accelerator-specific portions, each hardware accelerator divides resulting datasets into NIC-specific portions, and each NIC divides data into network port-specific portions. This multi-level segmentation enables bandwidth enhancement by ensuring efficient data distribution at each layer, while the modular nature of segmentation keeps the added complexity manageable through standardized interfaces and protocols

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the traditional flat load balancing approach by organizing workload allocation across multiple levels (system level, accelerator level, NIC level, network port level). This dimensional transformation enables bandwidth enhancement through specialized optimization at each level while distributing complexity across the hierarchy rather than concentrating it at a single point

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS20250383934A1Computer workload allocation for hardware processing system
Publication Date: 2025.12.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20250383934A1 patent drawing
  • US20250383934A1 patent drawing
  • US20250383934A1 patent drawing

AI summary

A method for computer workload allocation at a system-on-chip (SoC) includes, at a load balancing controller of the SoC, dividing a computer workload for distributed processing between each of a plurality of hardware accelerators of the SoC as a plurality of accelerator-specific data allocations. At a hardware accelerator of the plurality of hardware accelerators, after receiving an accelerator-specific data allocation from the load balancing controller, a resulting dataset output by the hardware accelerator is divided between a plurality of network interface controllers (NICs) of the SoC as a plurality of NIC-specific data allocations. At an NIC of the plurality of NICs an NIC-specific data allocation assigned to the NIC is divided between a plurality of network ports of the NIC for transmission over a computer network.