Compiler Mixed Integer Model for Dataflow Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current compilers for data parallel and dataflow applications, such as convolutional neural networks, face challenges in efficiently mapping neural network operators and data flow to coarse-grain reconfigurable processor (CGRP) hardware, leading to suboptimal execution performance due to complex requirements for pipelining, data routing, and synchronization in massively parallel architectures.

Innovation Solution

A method involving a Mixed Integer (MI) model is used to determine globally optimized mapping decisions for mapping dataflow applications to CGRP hardware, employing an MI solver to solve equations that include objective functions and constraints, thereby optimizing resource allocation and execution efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If current compilers map neural network operators to CGRP hardware, then the application can execute on the target platform, but the execution performance is suboptimal due to complex pipelining, data routing, and synchronization requirements

Engineering Contradiction:
Improveexecution throughputVSAvoidcompiler complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent transforms the compiler optimization problem into a mathematical optimization problem by changing the parameters from heuristic mapping decisions to mixed-integer linear programming variables. The objective function and constraints are formulated in terms of execution time, resource allocation, and dataflow timing parameters, allowing systematic optimization of throughput while managing complexity through mathematical modeling rather than ad-hoc compiler logic.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces an intermediate mathematical model (MILP formulation) that mediates between the high-level application description and the low-level hardware mapping. This intermediary layer translates compiler optimization goals into solvable mathematical equations, bridging the gap between application requirements and hardware constraints without requiring direct complex compiler logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If complex pipelining and synchronization are implemented in massively parallel architectures, then execution efficiency can be improved, but mapping complexity and optimization difficulty increase significantly

Engineering Contradiction:
Improveexecution efficiencyVSAvoidmapping complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent replaces the mechanical/compiler-based optimization process with a mathematical optimization system. Instead of using complex compiler algorithms to manually manage pipelining and synchronization, the patent formulates these as mathematical constraints and objective functions in an MILP model, allowing automated solvers to find optimal mappings without manual intervention.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent performs preliminary formulation of the mapping problem into mathematical equations before optimization. By pre-defining the objective function and constraints that capture pipelining and synchronization requirements, the complex optimization is transformed into a structured mathematical problem that can be solved systematically rather than through iterative compiler passes.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If resource allocation is optimized for specific workloads, then execution latency is reduced, but adaptability to different applications decreases

Engineering Contradiction:
Improveexecution latencyVSAvoidapplication adaptability
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal MILP formulation that can handle multiple application types and hardware configurations through a single optimization framework. The mathematical model is designed to be application-agnostic, accepting different objective functions and constraints based on the specific workload and hardware platform, thus providing both optimized latency and broad adaptability through one versatile system.

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

Data Source

PatentUS20230315802A1Compiler optimization of dataflow applications using mixed integer equations
Publication Date: 2023.10.05 SAMBANOVA SYSTEMS INC
  • US20230315802A1 patent drawing
  • US20230315802A1 patent drawing
  • US20230315802A1 patent drawing

AI summary

A method comprises a compiler generating a MI (mixed integer) model to determine mapping decisions to map a dataflow application to hardware of a computing system to execute the application. The MI model comprises MI equations to solve by an MI solver. The MI equations include equations of an objective function corresponding to an optimization objective. The MI equations can comprise decision variables and equations and constraint variables and equations. The compiler outputs the MI model to the MI solver and invokes the MI solver to compute an MI solution comprising solutions to equations among the equations included in the MI model. The compiler receives the MI solution and generates a globally optimized mapping decision based on the MI solution. The MI solver can comprise a commercial program to solve MI linear equations. A computer program product and a computing system can implement the method.