Sync Trace Circuitry for Barrier Synchronization Timing Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-tile processing units, ensuring data consistency and preventing code on one processor from running ahead of dependent data from another processor requires effective synchronization mechanisms, particularly in complex machine intelligence applications where parallel processing is prevalent.

Innovation Solution

A device comprising a processing unit with a sync controller and sync trace circuitry that coordinates barrier synchronizations, exchanging sync messages to separate compute and exchange phases, and providing timing information for synchronization trace output.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If barrier synchronizations are implemented to ensure data consistency across multiple processors, then data consistency and reliability are improved, but processing time and system complexity increase

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The sync trace circuitry is configured to capture synchronization timing information in advance during the barrier synchronization events, storing it in buffers before analysis. This preliminary capture of timing data allows post-processing analysis without adding delays to the actual synchronization operations, thus maintaining data consistency while minimizing processing time impact.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces sync trace circuitry as an intermediary component that monitors and records barrier synchronization events without interfering with the critical data consistency mechanism. This intermediary captures timing information from sync messages exchanged between processors and the sync controller, enabling analysis of synchronization behavior while leaving the core synchronization protocol unchanged and efficient.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If barrier synchronizations are implemented to prevent code from running ahead of dependent data, then data consistency is improved, but device complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsynchronization mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The sync trace circuitry is segmented into distinct functional blocks: a message reception interface that receives sync messages from processors, a timing capture unit that records timing information, and an output interface that provides the captured data for analysis. This segmentation allows each component to perform its function independently and efficiently, reducing the complexity of the overall synchronization mechanism while maintaining data consistency.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If timing information is captured for each sync message to enable synchronization analysis, then measurement precision is improved, but use of energy and device complexity increase

Engineering Contradiction:
Improvesynchronization timing precisionVSAvoidenergy consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The sync trace circuitry utilizes the existing sync messages that are already being exchanged between processors and the sync controller for barrier synchronizations. Instead of generating separate timing signals or using additional hardware timers, the circuitry extracts timing information from the existing synchronization protocol messages, thereby achieving precise timing measurements without significant additional energy consumption.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11907772B2Tracing synchronization activity of a processing unit
Publication Date: 2024.02.20 GRAPHCORE LTD
  • US11907772B2 patent drawing
  • US11907772B2 patent drawing
  • US11907772B2 patent drawing

AI summary

A device comprising: a processing unit comprising at least one processor configured to: participate in barrier synchronisations, each of which separates a compute phase of the at least one processor from an exchange phase for the at least one processor; and exchange sync messages with a sync controller hardware unit so as to co-ordinate each of the barrier synchronisations; and sync trace circuitry configured to: receive one or more of the sync messages; and in response to each of the one or more of the sync messages, provide sync trace information for output from the device, the sync trace information comprising timing information associated with the respective sync message.