Deep Kernel Fusion for ML Processor Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional kernel fusion techniques in machine learning are limited by their inability to account for complex dependency patterns and all types of operations, leading to suboptimal hardware resource utilization and performance in neural network workloads.

Innovation Solution

Deep fusion of kernel operations that allows simultaneous execution of both arithmetic and non-arithmetic operations across multiple hardware modules, optimizing dependencies and resource utilization through a computation scheduling technique that identifies fused execution schedules agnostically across different hardware architectures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional single operation approach is used, then hardware module simplicity is maintained, but hardware resource utilization is low and performance is poor

Engineering Contradiction:
ImproveperformanceVSAvoidkernel fusion complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple operations (matrix multiplication, element-wise operations, data transformations, memory loads/stores, networking operations) into a single fused kernel that executes simultaneously on heterogeneous hardware modules. This combining of operations resolves the contradiction by improving productivity through better hardware resource utilization while managing complexity through a unified execution model.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The fused kernel approach creates a universal execution framework that can handle multiple types of operations across different hardware modules (matrix multiplication units, vector units, transpose units, HBM interfaces, ICI links). This multi-functionality improves performance by keeping all hardware modules busy while the modular design manages the complexity through standardized interfaces.

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

2Productivity

If conventional kernel fusion is applied, then some memory roundtrips are reduced, but complex dependency patterns cannot be handled and not all operation types are accounted for

Engineering Contradiction:
Improveexecution efficiencyVSAvoiddependency pattern adaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic scheduling within the fused kernel that can adapt to complex dependency patterns such as normalization across channels and softmax across tokens. The execution engine dynamically adjusts the timing and ordering of operations based on data dependencies, allowing the system to handle versatile dependency patterns while maintaining execution efficiency through parallel processing of independent operations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The fused kernel maintains continuous useful action by keeping all hardware modules busy throughout execution, eliminating idle periods. By fusing memory loads, arithmetic operations, data transformations, and networking operations into a single continuous execution stream, the system achieves both high productivity and adaptability to complex operations without stopping for memory roundtrips or handling diverse dependency patterns.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If operations are executed sequentially, then hardware module design is simplified, but most hardware modules remain idle and performance is low

Engineering Contradiction:
Improvehardware resource utilizationVSAvoidexecution schedule complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the fused kernel execution into multiple stages that can be executed in parallel across different hardware modules. The execution schedule is divided into segments where memory loads, arithmetic operations, data transformations, and networking operations occur simultaneously in different segments, maximizing hardware resource utilization while managing complexity through structured segmentation of the execution flow.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240126617A1Deep fusion of kernel execution
Publication Date: 2024.04.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20240126617A1 patent drawing
  • US20240126617A1 patent drawing
  • US20240126617A1 patent drawing

AI summary

Embodiments of the present disclosure include techniques for machine language processing. In one embodiment, the present disclosure includes configuring functional modules on a machine learning processor to execute a plurality of machine learning (ML) operations during a plurality of time segments. During the time segments, a first portion of the ML operations execute serially and at least one other ML operation executes during at least a majority of the time of each of the time segments. Serial ML operations may be processed simultaneously with the at least one other ML operation.