FPGA Memory Synchronization for Distributed System Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed computing systems face inefficiencies in memory synchronization, particularly due to overutilization of the CPU and reliance on CPU-based conflict detection and management, which can lead to increased latency and processing overhead.

Innovation Solution

A distributed computing system utilizing a logic device, such as a field programmable gate array (FPGA), to manage memory synchronization and conflict detection, where memory controllers send signals to the logic device for direct synchronization and conflict resolution, reducing CPU involvement and enhancing processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If CPU-based memory synchronization is used, then memory synchronization can be achieved, but CPU overutilization occurs and processing latency increases

Engineering Contradiction:
Improvememory synchronization reliabilityVSAvoidCPU processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the memory synchronization function from the CPU by introducing a dedicated memory synchronization device. This device independently manages memory synchronization operations, conflict detection, and resolution, freeing the CPU from these overhead tasks and eliminating CPU overutilization while maintaining synchronization reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a memory synchronization device as an intermediary component between memory controllers. This mediator handles conflict detection and resolution for memory access operations, preventing CPU involvement in conflict management and reducing processing latency while ensuring synchronization integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If CPU-based conflict detection and management is used, then conflicts can be detected and resolved, but processing overhead increases

Engineering Contradiction:
Improveconflict detection accuracyVSAvoidprocessing overhead time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts conflict detection and management functions from the CPU to a specialized memory synchronization device. This dedicated device continuously monitors memory access patterns and detects conflicts without consuming CPU resources, eliminating processing overhead while maintaining accurate conflict detection.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The memory synchronization device performs self-service by autonomously detecting conflicts and resolving them without CPU intervention. The device independently manages synchronization state and resolves conflicts, eliminating the time loss associated with CPU-based conflict management while ensuring reliable conflict detection.

Inventive Principle:
Principle #25Self-service

3Productivity

If RDMA is used for memory transfers, then CPU burden is reduced, but CPU-based conflict management remains necessary

Engineering Contradiction:
ImproveCPU processing efficiencyVSAvoidsynchronization system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal memory synchronization device that works alongside RDMA technology. This device provides multi-functional support for both RDMA-based memory transfers and conflict detection/management, allowing the system to benefit from RDMA's CPU-offloaded transfers while adding comprehensive synchronization capabilities without increasing overall system complexity.

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

Data Source

PatentUS10387053B1Memory synchronization in a distributed computing system
Publication Date: 2019.08.20 AMAZON TECH INC
  • US10387053B1 patent drawing
  • US10387053B1 patent drawing
  • US10387053B1 patent drawing

AI summary

Regions of memory in a distributed computing system may be synchronized. A first computing node may comprise a processor writing to a memory via a memory controller. A request to write data to the memory may be received by the memory controller. The memory controller may send a signal to a logic device which forwards the signal to other computing nodes in the distributed system. The memory controller may detect and respond to conflicting writes by instructing the computing nodes to overwrite conflicting memory regions with a data pattern indicative of the conflict.