Shared Memory Interconnection Network for Tightly-Coupled Multiprocessors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing multiprocessor computers face inefficiencies in allowing tens of processing cores to concurrently access random addresses in a shared memory system with bandwidth and latency comparable to single-core local memory access, due to cumbersome interconnection networks and the burden of synchronization and scheduling activities.

Innovation Solution

A shared memory system with a separate read and write network, utilizing logarithmic multistage networks in parallel, which computes paths between processing cores and memory banks at every clock cycle, supports simple read and write operations, and exploits memory locality to increase bandwidth, reducing delays and conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a shared memory system is used to support tens of processing cores, then the system can achieve parallel computation, but the bandwidth and latency become insufficient compared to single-core local memory access

Engineering Contradiction:
Improveparallel computation capabilityVSAvoidmemory access bandwidth and latency
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The shared memory system is divided into multiple memory banks (B1, B2, ..., Bk) that can be accessed independently. Each memory bank operates as a separate entity with its own access interface, allowing multiple processing cores to simultaneously access different banks without interfering with each other. This segmentation enables the shared memory system to provide bandwidth comparable to local memory by allowing parallel access to multiple banks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A dedicated interconnection network acts as an intermediary between processing cores and memory banks. This interconnection network is specifically designed to provide low-latency, high-bandwidth communication paths, serving as a specialized mediator that optimizes the access speed between cores and the segmented memory banks, achieving performance comparable to local memory access.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a complicated interconnection network is used to connect processing cores to memory banks, then more cores can be supported, but the device complexity increases and performance decreases

Engineering Contradiction:
Improvenumber of supported processing coresVSAvoidinterconnection network complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The interconnection network is segmented into multiple independent paths or stages, where each segment handles a specific portion of the core-to-memory bank routing. This segmentation allows the network to scale to support more cores by adding segments rather than increasing the complexity of a monolithic network structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The interconnection network is organized as a multistage network where data flows through multiple dimensions or stages of routing. Instead of a single complex routing dimension, the network uses multiple simpler stages (e.g., stage 1 routes to intermediate nodes, stage 2 routes to final banks), transforming a complex single-dimension problem into multiple simpler dimensions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of operation

If synchronization and scheduling activities are performed through the shared memory system, then coordination between cores is achieved, but the shared memory efficiency deteriorates due to hot spots and atomic operation requirements

Engineering Contradiction:
Improvesynchronization and scheduling capabilityVSAvoidshared memory access efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

Synchronization and scheduling activities are extracted from the shared memory system and handled by separate dedicated hardware units. This extraction removes the burden of atomic operations and synchronization primitives from the memory path, allowing the shared memory system to focus on efficient data access while synchronization is handled independently through specialized circuits.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Dedicated synchronization units act as intermediaries between processing cores, handling all coordination activities outside the shared memory path. These intermediary units manage atomic operations and synchronization without requiring shared memory involvement, preventing hot spots and maintaining high memory access efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8099561B2Shared memory system for a tightly-coupled multiprocessor
Publication Date: 2012.01.17 N B PLURAL LTD
  • US8099561B2 patent drawing
  • US8099561B2 patent drawing
  • US8099561B2 patent drawing

AI summary

A shared memory system for a multicore computer system utilizing an interconnection network that furnishes tens of processing cores or more with the ability to refer concurrently to random addresses in a shared memory space with efficiency comparable to the typical efficiency achieved when referring to private memories. The network is essentially a lean and light-weight combinational circuit, although it may also contain non-deep pipelining. The network is generally composed of a sub-network for writing and a separate multicasting sub-network for reading, whose topologies are based on multiple logarithmic multistage networks, e.g. Baseline Networks, connected in parallel. The shared memory system computes paths between processing cores and memory banks anew at every clock cycle, without rearrangement. It returns an approval reply to every core whose initiative of accessing memory leads to the successful establishment of a path and is fulfilled, or a rejection reply to every core whose initiative is not fulfilled.