Memory Module Packet Queues for Low-Latency Shared Memory Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for exchanging network packets between a host and a memory module, such as NW-DIMM, result in high latency and reduced bandwidth due to smaller packets being sandwiched between larger ones, leading to stalling of acknowledgements and inefficient bandwidth utilization.

Innovation Solution

Implementing multiple queues, including a latency queue pair (LQP) and a performance queue pair (PQP), to segregate network packets based on size, allowing independent transmission and reception of packets of varying sizes, thereby reducing latency and improving bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If network packets are transmitted in a single queue without segregation, then the transmission process is simple, but smaller packets experience high latency due to being sandwiched between larger packets

Engineering Contradiction:
ImprovelatencyVSAvoidqueue structure
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The single transmission queue is segmented into multiple queues (e.g., high-priority and low-priority queues) based on packet size or type. Small packets are directed to high-priority queues while large packets go to low-priority queues, allowing small packets to be transmitted without being blocked by large packets, thereby reducing latency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different queues are assigned different transmission priorities or characteristics tailored to specific packet types. High-priority queues handle small, time-sensitive packets with faster transmission, while low-priority queues handle large, less time-sensitive packets, optimizing the transmission experience for each packet category.

Inventive Principle:
Principle #3Local quality

2Productivity

If smaller packets wait for larger packets to complete transmission, then bandwidth utilization is maintained, but acknowledgement stalling occurs reducing overall bandwidth

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidacknowledgement delivery
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The transmission queue is segmented into multiple priority levels, allowing small packets to be transmitted independently of large packets. This segmentation prevents small packets from waiting for large packet transmission to complete, eliminating acknowledgement stalling and ensuring continuous bandwidth utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

By allowing small packets to be transmitted in high-priority queues while large packets are transmitted in low-priority queues, the system maintains continuous transmission activity without interruptions. Acknowledgements for small packets can be sent back continuously, preventing stalling and maintaining steady bandwidth utilization.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12580875B2Methods and systems for exchanging network packets between host and memory module using multiple queues
Publication Date: 2026.03.17 SAMSUNG ELECTRONICS CO LTD
  • US12580875B2 patent drawing
  • US12580875B2 patent drawing
  • US12580875B2 patent drawing

AI summary

A method and system for exchanging network packets in a memory system is provided. A size of each network packet to be transmitted is determined. Each network packets is segregated into one of plural queues based on the size of the network packet. Each network packet is transmitted over a shared memory, according to the queue in which the network packet is segregated.