Storage Offloading Program Deduplication With Hash and Count Tables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices inefficiently manage offloading programs, leading to redundant storage and unnecessary resource consumption due to identical programs being stored multiple times, which results in inefficient memory use.

Innovation Solution

Implementing an offloading program table and a count table to manage offloading programs, allowing the storage device to determine if a program is already stored and adjust memory allocation based on the number of processing operations required, thereby preventing redundant storage and optimizing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the storage device stores offloading programs whenever received from the host without considering redundancy, then the storage device can fulfill all processing operation requests, but unnecessary resource consumption and inefficient memory use occur due to redundant storage of identical programs

Engineering Contradiction:
Improveability to fulfill processing operation requestsVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent creates a copy (hash value) of the offloading program to check for existing identical programs in the storage device. Instead of storing multiple copies of the same program, the system generates a hash value from the received program and searches for matching hash values in the hash table. This allows the system to fulfill all processing requests while avoiding redundant storage, as the same program is stored only once even if requested multiple times.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent performs a preliminary check before storing the offloading program by generating a hash value and searching the hash table for existing matches. This preliminary action prevents redundant storage from occurring in the first place, rather than detecting and removing duplicates after they have been stored. The system checks whether an identical program already exists before committing storage resources.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the storage device stores offloading programs whenever received from the host without considering redundancy, then all processing operations can be performed, but memory use becomes inefficient due to redundant storage

Engineering Contradiction:
Improveprocessing operation capabilityVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSVolume of stationary object

Solution Approach 1:

The system creates a hash value (a compact representation) of the offloading program and stores this hash in the hash table along with a pointer to the actual program storage location. This copying mechanism enables efficient duplicate detection with minimal memory overhead, allowing the system to maintain full processing capability while significantly reducing memory consumption compared to storing full program copies for every request.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent performs a preliminary hash-based search before storing the offloading program to determine whether an identical program already exists in memory. This preliminary check prevents redundant memory allocation from occurring, ensuring that memory resources are used efficiently while maintaining the ability to perform all required processing operations.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If the storage device checks for redundant offloading programs using detailed comparison methods, then redundant storage can be prevented, but processing time increases due to complex checking operations

Engineering Contradiction:
Improvememory efficiencyVSAvoidprogram checking time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent transforms the offloading program into a different parameter representation (hash value) that is much more efficient for comparison operations. Instead of comparing entire programs which would be time-consuming, the system compares compact hash values that can be quickly generated and matched. This parameter transformation maintains memory efficiency while dramatically reducing the time required for duplicate detection.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system creates a simplified copy (hash value) of the offloading program that captures the essential identity of the program without containing all its details. This hash copy enables rapid comparison operations to detect duplicates, achieving both memory efficiency and fast processing. The hash value serves as a lightweight surrogate for the full program during the checking phase.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12468474B2Storage device and method performing processing operation requested by host
Publication Date: 2025.11.11 SAMSUNG ELECTRONICS CO LTD
  • US12468474B2 patent drawing
  • US12468474B2 patent drawing
  • US12468474B2 patent drawing

AI summary

A storage device includes; a memory, a management circuit configured to manage an offloading program table and a count table, and a computing circuit configured to perform a processing operation using the offloading program table, the count table, and the memory. The management circuit is further configured to, in response to a first offloading program and a first offloading request, selectively store the first offloading program in the offloading program table in accordance with a determination of whether an offloading program identical to the first offloading program is stored in the offloading program table, and update the count table storing a first count indicating a remaining number of processing operations using the first offloading program.