Memory System Message Manager Batching Host Requests

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face performance bottlenecks due to limited resources for parallel transmission of inter-process communication (IPC) messages among processing cores, which can be exacerbated by the need to process multiple requests separately.

Innovation Solution

Implementing a message manager within the memory system to group similar requests from the host system into combined requests, thereby reducing the number of IPC messages and improving performance by processing these combined requests more efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple requests are processed separately, then each request can be handled individually, but the number of inter-process communication messages increases and performance deteriorates

Engineering Contradiction:
Improverequest processing throughputVSAvoidnumber of IPC messages
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent combines multiple separate requests into a single batched request before processing. The message manager groups incoming requests that target the same or overlapping memory regions, merges them into a consolidated request, and processes them together. This reduces the total number of IPC messages from multiple separate request-processing cycles to a single batched request-processing cycle, directly resolving the contradiction between processing throughput and message quantity.

Inventive Principle:
Principle #5Merging (Combining)

2Quantity of substance

If requests are grouped and combined, then inter-process communication messages are reduced, but the complexity of request management increases

Engineering Contradiction:
Improvenumber of IPC messagesVSAvoidrequest management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent introduces a message manager as an intermediary component between the host interface and the processing cores. This message manager handles the complex task of analyzing, grouping, and batching requests before they reach the processing cores. By centralizing the request management logic in this intermediary layer, the system reduces IPC messages while containing the complexity within a dedicated management component rather than distributing it across the entire system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If requests are processed individually, then request handling is simpler, but communication traffic congestion occurs and performance is limited

Engineering Contradiction:
Improverequest handling simplicityVSAvoidcommunication throughput
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent performs preliminary grouping and batching of requests before they are sent to processing cores. The message manager analyzes incoming requests, identifies those that can be combined, and merges them into optimized batches in advance. This preliminary action prepares the request stream for more efficient parallel processing, reducing communication traffic congestion and improving throughput while maintaining relatively simple individual request handling logic in the processing cores.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250156252A1Grouping requests to reduce inter-process communication in memory systems
Publication Date: 2025.05.15 MICRON TECHNOLOGY INC
  • US20250156252A1 patent drawing
  • US20250156252A1 patent drawing
  • US20250156252A1 patent drawing

AI summary

A memory system having a set of media, a plurality of inter-process communication channels, and a controller configured to run a plurality of processes that communicate with each other using inter-process communication messages transmitted via the plurality of inter-process communication channels, in response to requests from a host system to store data in the media or retrieve data from the media. The memory system has a message manager that examines requests from the host system, identifies a plurality of combinable requests, generates a combined request, and provides the combined request to the plurality of processes as a substitute of the plurality of combinable requests.