Instruction-Based Synchronization for SIMD Scatter Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor designs that perform single-instruction, multiple-data (SIMD) scatter store operations require hardware resources to track addresses, which can slow down processor operations and increase circuit area.

Innovation Solution

Implementing instruction-based synchronization using scatter store-release and load-acquire instructions to manage the ordering of SIMD scatter store operations, reducing the need for special-purpose hardware to track addresses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hardware resources are used to track addresses of SIMD scatter store operations, then memory operation ordering can be ensured, but processor speed decreases and circuit area increases

Engineering Contradiction:
Improvememory operation orderingVSAvoidprocessor speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent replaces the mechanical hardware tracking system with a software-based approach using memory barriers (fence instructions). Instead of using dedicated hardware circuits to track and manage addresses of SIMD scatter operations, the invention uses sequential memory barrier instructions that control the ordering of memory operations through software-controlled synchronization points, thereby eliminating the need for address-tracking hardware and improving processor speed.

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

Solution Approach 2:

The patent introduces memory barrier instructions as intermediary elements that mediate between the SIMD scatter store operations and subsequent memory operations. These barrier instructions act as synchronization points that ensure proper ordering without requiring direct hardware tracking of addresses, thus maintaining reliability while reducing hardware complexity and improving speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If hardware resources are used to track addresses of SIMD scatter store operations, then memory operation ordering can be ensured, but circuit area increases

Engineering Contradiction:
Improvememory operation orderingVSAvoidcircuit area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent replaces the mechanical hardware tracking system with a software-based approach using memory barriers (fence instructions). Instead of using dedicated hardware circuits to track and manage addresses of SIMD scatter operations, the invention uses sequential memory barrier instructions that control the ordering of memory operations through software-controlled synchronization points, thereby eliminating the need for address-tracking hardware and improving processor speed.

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

Solution Approach 2:

The patent utilizes general-purpose memory barrier instructions that can serve multiple synchronization purposes beyond just SIMD scatter operation ordering. These universal fence instructions can manage ordering for various types of memory operations, eliminating the need for specialized hardware circuits dedicated solely to tracking SIMD scatter addresses, thus reducing overall circuit area.

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

3Reliability

If hardware address tracking is implemented, then SIMD scatter operation synchronization is achieved, but processor resources are consumed

Engineering Contradiction:
Improveoperation synchronizationVSAvoidprocessor productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the mechanical hardware tracking system with a software-based approach using memory barriers (fence instructions). Instead of using dedicated hardware circuits to track and manage addresses of SIMD scatter operations, the invention uses sequential memory barrier instructions that control the ordering of memory operations through software-controlled synchronization points, thereby eliminating the need for address-tracking hardware and improving processor speed.

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

Data Source

PatentEP3516501B1Instruction-based synchronization of operations including at least one SIMD scatter operation
Publication Date: 2021.06.23 QUALCOMM INC
  • EP3516501B1 patent drawingFigure 1
  • EP3516501B1 patent drawingFigure 2
  • EP3516501B1 patent drawingFigure 3

AI summary

A method of determining an execution order of memory operations performed by a processor includes executing at least one single-instruction, multiple-data (SIMD) scatter operation by the processor to store data to a memory. The method further includes executing one or more instructions by the processor to determine the execution order of a set of memory operations. The set of memory operations includes the at least one SIMD scatter operation.