Workload Partitioning for Spatial Architecture Resource Assignment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex computing workloads, such as deep learning, face challenges in efficiently organizing and assigning operations to available hardware resources due to constraints like spatial architecture and bandwidth limitations, making it difficult to achieve computationally efficient workload management.

Innovation Solution

A computerized method that partitions workload operations into subgraphs to minimize their quantity and maximize resource utilization, then maps these subgraphs to logical processing engine units and assigns them to physical units to minimize network traffic, using techniques like Integer Linear Programming and Einstein Summation notation for efficient resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the workload graph is partitioned into more subgraphs, then resource utilization per subgraph is maximized, but the quantity of subgraphs increases

Engineering Contradiction:
Improveresource utilizationVSAvoidquantity of subgraphs
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The workload graph is segmented into subgraphs that can be independently mapped to physical devices. The partitioning algorithm divides the graph into contiguous subgraphs with minimal cross-subgraph edges, allowing each subgraph to be optimized for resource utilization while maintaining manageable complexity through systematic segmentation strategies.

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If operations are assigned to physical resources considering spatial architecture constraints, then resource assignment accuracy is improved, but computational efficiency of assignment decreases

Engineering Contradiction:
Improveassignment accuracyVSAvoidcomputational efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-computing valid mappings between logical PE units and physical devices based on spatial architecture constraints. Bandwidth thresholds and connectivity requirements are pre-established, allowing the assignment algorithm to quickly match subgraphs to physical resources without repeatedly validating complex constraints during the optimization process.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If the workload is mapped to physical devices considering bandwidth limitations, then network traffic is minimized, but the complexity of mapping increases

Engineering Contradiction:
Improvenetwork trafficVSAvoidmapping complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The mapping problem is segmented into multiple stages: first partitioning the workload graph into subgraphs, then mapping each subgraph to physical devices independently. This segmentation allows bandwidth constraints to be enforced at the subgraph level rather than across the entire workload, reducing the complexity of constraint satisfaction while minimizing network traffic through optimal subgraph placement.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240303117A1Assigning workloads to physical resources in spatial architectures
Publication Date: 2024.09.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20240303117A1 patent drawing
  • US20240303117A1 patent drawing
  • US20240303117A1 patent drawing

AI summary

Operations of a workload are assigned to physical resources of a physical device array. The workload includes a graph of operations to be performed on a physical device array. The graph of operations is partitioned into subgraphs. Partitioning includes at least minimizing the quantity of subgraphs and maximizing resource utilization per subgraph. A logical mapping of the subgraph to logical processing engine (PE) units is generated using features of the subgraph and tiling factors of the logical PE units. The logical mapping is assigned to physical PE units of the physical device array at least by minimizing network traffic across the physical PE units. The operations of the subgraph are performed using the physical PE units to which the logical mapping is assigned. This process enhances the computational efficiency of the array when executing the workload.