Graph Neural Network Database Driven Place and Route

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current coarse-grain reconfigurable architecture (CGRA) compilers face challenges in reducing compile time and achieving efficient dataflow execution due to the complexity of code analysis, operation placement, and data routing, particularly in ab-initio placement methods which are time-consuming and inefficient.

Innovation Solution

A database-driven place and route system utilizing a graph neural network (GNN) to classify and place unit graphs by identifying nearest matching subgraphs from a database of previously placed reference graphs, reducing the need for ab-initio placement and optimizing compile time through the use of empirically validated reference graphs and their placements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If ab-initio placement methods are used for CGRA compilation, then placement accuracy can be achieved, but compile time becomes excessively long

Engineering Contradiction:
Improveplacement accuracyVSAvoidcompile time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system pre-computes and stores optimal placement solutions for various unit graphs in a database before actual compilation. When compiling, the system retrieves pre-computed placements from the database rather than performing ab-initio placement, dramatically reducing compile time while maintaining placement accuracy through the use of empirically validated reference placements.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a database of copied reference unit graphs with their validated placement information. Instead of solving placement from scratch for each compilation, the system copies relevant placement patterns from the database that match the current compilation requirements, significantly accelerating the compilation process.

Inventive Principle:
Principle #26Copying

2Productivity

If database-driven placement with GNN is used, then compile time is reduced, but system complexity increases due to GNN training and database construction

Engineering Contradiction:
Improvecompilation speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces a GNN model as an intermediary between the database and the placement process. The GNN learns to predict optimal placements by training on the database of reference unit graphs, acting as a mediator that translates database information into placement decisions, thereby reducing compile time while managing complexity through a specialized but dedicated component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs GNN training and database construction as preliminary actions before actual compilation. This upfront investment in creating the trained GNN model and populating the database enables fast compilation subsequently, separating the complex setup phase from the efficient execution phase.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If more reference unit graphs are stored in the database, then placement quality improves, but database size and memory requirements increase

Engineering Contradiction:
Improveplacement qualityVSAvoiddatabase size
Core Design Contradiction:
Manufacturing precisionVSVolume of stationary object

Solution Approach 1:

The system applies local quality by storing detailed placement information for specific types of unit graphs in the database. Rather than uniformly storing all possible graphs, the system focuses on storing reference graphs that are locally relevant to common compilation patterns, maintaining high placement quality for frequently encountered cases while limiting database growth.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system uses partial action by storing only the most essential and frequently needed reference unit graphs in the database. The GNN model compensates for the incomplete database by learning generalization patterns, allowing the system to achieve good placement quality with a manageable database size that covers the most common cases.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20240220803A1Training a graph neural network for database driven place and route
Publication Date: 2024.07.04 SAMBANOVA SYSTEMS INC
  • US20240220803A1 patent drawing
  • US20240220803A1 patent drawing
  • US20240220803A1 patent drawing

AI summary

This application provides an example method, an example system, and an example non-transitory computer-readable medium for training a graph neural network (GNN) for database driven place and route. One example method includes training a GNN to predict a nearest matching subgraph identifier and a nearest matching score using a plurality of features for each previously placed reference unit graph from a database of previously placed reference unit graphs, and to produce a trained GNN, receiving an unplaced unit graph, and determining a nearest matching subgraph identifier and a nearest matching score for the unplaced unit graph using the trained GNN. The example method also includes placing configurable units of the unplaced unit graph onto positions in a configurable units array according to placement position attributes corresponding to a nearest matching subgraph identified by the nearest matching subgraph identifier to produce placed configurable units of the unplaced unit graph.