Host Computer External Cache Using SSD Free Space

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The free space in high-speed storage devices, such as SSDs, is not effectively utilized in host computers, leading to inefficiencies in data management and storage systems.

Innovation Solution

The unused space in a second storage device is utilized as an external cache memory region, where Write data is first stored in the main cache and then in an external cache, and Read data is retrieved from the external cache if available, reducing the need for direct access to the storage apparatus.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If free space in high-speed storage devices is not utilized, then device complexity is reduced, but productivity decreases due to inefficient data management

Engineering Contradiction:
Improvedata access efficiencyVSAvoidstorage system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes the host computer's storage device serve dual functions: its original storage function plus an additional cache memory function. By designating part of the free space in the high-speed storage device (SSD) as an external cache, the system utilizes existing resources for multiple purposes, improving data access efficiency without adding separate cache hardware to the storage apparatus.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The host computer autonomously manages its own storage resources by identifying and utilizing free space in its storage device as cache memory. The host control device determines cache regions, manages cache data, and handles read/write operations independently, reducing the need for complex centralized cache management in the storage apparatus.

Inventive Principle:
Principle #25Self-service

2Speed

If free space is utilized as external cache, then data access speed is improved, but device complexity increases

Engineering Contradiction:
Improvedata access speedVSAvoidcache management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The host control device autonomously identifies free space in the storage device, designates cache regions, and manages cache operations without requiring complex cache management functionality in the storage apparatus. The host computer self-services its cache needs by utilizing its own storage resources and control capabilities.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The host control device acts as an intermediary between the storage device and the main memory, managing data transfer and cache operations. It receives read/write requests, determines whether data exists in the external cache, and coordinates data movement between the storage device, external cache, and main memory, simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If Write data is stored in both main cache and external cache, then reliability is improved, but loss of energy increases due to duplicate writes

Engineering Contradiction:
Improvedata consistencyVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

When write data is stored in the external cache, the system performs a preliminary action by setting a valid flag that marks the data as synchronized. This allows subsequent read operations to quickly determine whether data exists in the external cache without performing full validation, reducing energy consumption while maintaining data consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements different quality levels for data storage locations. The external cache provides fast access for frequently used data, while the main cache and storage apparatus provide reliable persistent storage. Data is replicated in the external cache with associated metadata (valid flags, addresses) that enable efficient verification, creating a hierarchical quality structure that balances speed and reliability.

Inventive Principle:
Principle #3Local quality

4Productivity

If external cache is used for Read operations, then productivity is improved, but device complexity increases due to additional determination steps

Engineering Contradiction:
Improveread operation efficiencyVSAvoidread process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The host control device serves as an intermediary that manages the read process between the external cache and main memory. It receives read requests, determines whether data exists in the external cache by checking valid flags and addresses, and coordinates data retrieval from appropriate locations, simplifying the overall read process management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary actions by pre-establishing valid flags and address mappings for data in the external cache. During read operations, the host control device can quickly determine data availability by checking these pre-computed markers rather than performing comprehensive searches, improving read efficiency while maintaining manageable process complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9176881B2Computer system and storage control method
Publication Date: 2015.11.03 HITACHI VANTARA LTD
  • US9176881B2 patent drawing
  • US9176881B2 patent drawing
  • US9176881B2 patent drawing

AI summary

The entirety or a part of free space of a second storage device included in a host computer is used as a cache memory region (external cache) outside of a storage apparatus. If Input/Output (I/O) in the host computer is Write, a Write request is transmitted from the host computer to a storage apparatus, the storage apparatus writes data associated with the Write request into a main cache that is a cache memory region included in this storage apparatus, and the storage apparatus writes the data in the main cache into a first storage device included in the storage apparatus. The storage apparatus writes the data in the main cache into an external cache included in the host computer. If the I/O in the host computer is Read, the host computer determines whether or not Read data as target data of the Read exists in the external cache. If a result of the determination is positive, the host computer reads the Read data from the external cache.