Computational Storage Resource Isolation via Memory Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computational storage devices face challenges in isolating resources between different applications, leading to unpredictable execution results due to one application modifying resources used by another.

Innovation Solution

A method and system for resource isolation in computational storage devices, where a controller identifies a memory range within a memory region and stores associations between memory range IDs, memory regions, and offsets in a data structure, ensuring that each application has isolated access to its allocated resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple applications share computational storage resources, then resource utilization efficiency is improved, but execution predictability deteriorates due to resource interference between applications

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidexecution predictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments computational storage resources into isolated memory regions, each assigned to a specific application. The controller divides the shared memory into multiple independent segments using memory region identifiers (MRIDs), preventing applications from accessing each other's memory space while maintaining efficient resource utilization through controlled sharing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller acts as an intermediary between applications and computational storage resources. It manages resource allocation by receiving allocation requests, assigning unique memory regions with MRIDs, and enforcing access control policies that ensure predictable execution while maintaining high resource utilization through centralized management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If applications have shared access to computational storage resources, then resource flexibility is improved, but resource isolation deteriorates leading to unpredictable execution results

Engineering Contradiction:
Improveresource flexibilityVSAvoidresource interference
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements local quality by providing each application with a dedicated memory region that has specific access permissions. The controller configures different memory regions with distinct characteristics (read-only, read-write, executable) tailored to each application's needs, enabling resource flexibility while preventing harmful interference through localized access control.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Memory space is segmented into application-specific regions identified by unique MRIDs. Each segment has defined boundaries and access rules, allowing flexible resource allocation while maintaining strict isolation that prevents one application from modifying resources allocated to another application.

Inventive Principle:
Principle #1Segmentation

3Reliability

If the system allocates memory ranges to applications, then resource isolation is improved, but system complexity increases due to memory management overhead

Engineering Contradiction:
Improveresource isolationVSAvoidmemory management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The controller serves as an intermediary that abstracts complex memory management operations. It maintains data structures mapping application identifiers to memory region identifiers, automatically handling allocation, isolation, and access control. This intermediary approach provides strong resource isolation while hiding management complexity from applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses memory region identifier copies (MRIDs) as handles that applications use to reference their allocated memory regions. Instead of applications directly managing complex memory addresses, they work with simplified MRID copies that the controller translates to actual memory ranges, reducing application-side complexity while maintaining isolation.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12265714B2Resource isolation in computational storage devices
Publication Date: 2025.04.01 SAMSUNG ELECTRONICS CO LTD
  • US12265714B2 patent drawing
  • US12265714B2 patent drawing
  • US12265714B2 patent drawing

AI summary

A method includes receiving, at a controller of a computational storage (CS) device, a request to allocate computational storage to an application of a host device. The request includes a resource set ID associated with the application. The method further includes identifying a memory range within a memory region of the CS device. The method further includes storing, in a data structure associated with the resource set ID, an association between a memory range identifier (ID) of the memory range, the memory region, and an offset within the memory region. The method further includes sending the memory range ID to the host device.