Compiler-Configured Core Clusters for Low-Latency AI Data Sharing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Efficient data sharing and synchronization among processing cores in multicore processors for artificial intelligence workloads is challenging, particularly in managing communication overhead and cache coherence, which impacts the performance of neural network execution.

Innovation Solution

The use of configurable clusters of processing cores with shared resources, such as shared memory or network resources, where the output of one core is readily available as input to the next, and clustering determined by a compiler based on the characteristics of the computation, optimizing data flow and resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If processing cores are interconnected in a multicore system to enable parallel processing, then computational throughput is improved, but communication overhead and data sharing complexity increase

Engineering Contradiction:
Improvecomputational throughputVSAvoiddata sharing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments processing cores into distinct clusters, where each cluster is dedicated to specific AI workload types (e.g., convolutional neural networks, transformer models). This segmentation reduces cross-cluster communication overhead while maintaining parallel processing capabilities across clusters, directly addressing the contradiction between throughput and complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A compiler intermediary is introduced that automatically analyzes AI workloads and generates configuration instructions to optimally assign cores to clusters. This intermediary handles the complexity of data sharing and communication coordination, allowing the hardware to achieve high throughput without manual intervention or complex software management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If processing cores share common resources such as memory or network resources, then resource utilization efficiency is improved, but access contention and synchronization overhead increase

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidaccess latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Each processing core cluster is provided with dedicated shared resources (memory, network interfaces) that are locally optimized for the specific AI workload types assigned to that cluster. This local quality approach ensures high resource utilization for each cluster's workload while minimizing access contention and synchronization overhead by reducing the scope of shared resource access.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The compiler performs preliminary analysis of AI workload characteristics before execution and pre-configures cluster assignments and resource allocations. This preliminary action optimizes data flow patterns and resource access sequences, reducing runtime synchronization overhead and access latency while maintaining high resource utilization.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If the system uses a fixed cluster configuration, then implementation simplicity is improved, but adaptability to different AI workload characteristics deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoidworkload adaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system implements dynamic cluster configuration where the compiler can reassign processing cores to different clusters based on the specific characteristics of each AI workload. This dynamic adaptability allows the same hardware platform to be optimized for different workload types (CNNs, transformers, etc.) without physical reconfiguration, maintaining implementation simplicity while achieving high versatility.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250251921A1Multicore Processors with Resource Sharing Clusters for AI Acceleration
Publication Date: 2025.08.07 TENSTORRENT USA INC
  • US20250251921A1 patent drawing
  • US20250251921A1 patent drawing
  • US20250251921A1 patent drawing

AI summary

Systems and methods related to multicore processors with resource sharing clusters for AI acceleration are disclosed herein. The clusters can be clusters of cores in the multicore processor. The clusters of cores may be configurable. The configuration may be based on the characteristics of a specific computation, for example, the cores in a cluster all needing access to the same network data or the output of one core in a cluster being required as the input to another core in the cluster. A compiler may be programmed to group a set of cores into a set of clusters, wherein each cluster in the set of clusters is assigned a shareable resource from a set of shareable resources. The compiler may also be programmed to generate configuration instructions to assign the set of cores to the set of clusters. Accordingly, the set of cores may be organized efficiently for the computation.