IP Library Granted Patent US 12,093,563
Granted Patent B2
US 12,093,563 · App. 17/084,301 · Granted Sep 17, 2024

Endurance aware data placement in storage system with multiple types of media

Inventors: Kapil Karkra (Chandler, AZ); Mariusz Barczak (Gdansk, PL); Michal Wysoczanski (Koszalin, PL); Sanjeev Trika (Portland, OR); James Guilmart (Scottsdale, AZ)
Assignee: Intel Corporation
G06F3/0659G06F3/061G06F3/0688G06F2212/7201
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,093,563
App. No.
17/084,301
Granted
Sep 17, 2024
Kind
B2
Abstract

An embodiment of an electronic apparatus may include one or more substrates, and logic coupled to the one or more substrates, the logic to manage access to a storage system that includes a first persistent storage device and a second persistent storage device, capture input/output telemetry for a workload on the storage system, determine one or more write reduction factors and one or more write invalidation factors for the workload based on the captured input/output telemetry, and allocate storage for the workload between the first persistent storage device and the second persistent storage device based on the one or more write reduction factors and the one or more write invalidation factors. Other embodiments are disclosed and claimed.

Claims (58)

1. An electronic apparatus, comprising:

one or more substrates; and

integrated circuitry coupled to the one or more substrates, the integrated circuitry configured to:

manage access to a storage system that includes a first persistent storage device and a second persistent storage device;

capture input/output telemetry for a workload on the storage system;

determine one or more write reduction factors and one or more write invalidation factors for the workload based on the captured input/output telemetry, the one or more write reduction factors to comprise a first write reduction factor for a first input/output transaction, the one or more write invalidation factors to comprise a first write invalidation factor for a second input/output transaction, wherein the integrated circuitry to determine the one or more write reduction factors and the one or more write invalidation factors comprises the integrated circuitry to:

calculate the first write reduction factor as being equal to a first ratio of a number of first writes to the first persistent storage device to a number of second writes by a host processor; and

calculate the first write invalidation factor as being equal to a second ratio of a number of third writes by the host processor to an amount of storage space occupied by the workload; and

allocate storage for the workload between the first persistent storage device and the second persistent storage device based on each of the one or more write reduction factors and on each of the one or more write invalidation factors.

2. The electronic apparatus of claim 1 , wherein the integrated circuitry is further configured to:

classify the input/output telemetry into two or more data classes;

calculate a write invalidation factor for each of the two or more data classes; and

select a subset of the two or more data classes with the highest write invalidation factors for potential placement of data on the first persistent storage device.

3. The electronic apparatus of claim 2 , wherein the integrated circuitry is further configured to:

calculate a write reduction factor for each data class of the subset of the two or more data classes;

determine if the subset of the two or more data classes meets one or more fitness criteria based on the calculated write invalidation factors and the calculated write reduction factors for the subset of the two or more data classes; and if so determined,

place data that corresponds to the subset of the two or more data classes on the first persistent storage device.

4. The electronic apparatus of claim 3 , wherein the workload is associated with a runtime application and wherein the integrated circuitry is further configured to:

provide closed-loop allocation of storage between the first persistent storage device and the second persistent storage device at runtime based on the calculated write invalidation factors, the calculated write reduction factors, and the one or more fitness criteria.

5. The electronic apparatus of claim 1 , wherein the first persistent storage device comprises three dimensional crosspoint-based media and the second persistent storage device comprises NAND-based media.

6. An electronic system, comprising:

storage system that includes a first persistent storage device and a second persistent storage device; and

a storage manager communicatively coupled to the storage system, the storage manager including integrated circuitry configured to:

manage access to the storage system;

capture input/output telemetry for a workload on the storage system associated with a runtime application;

determine one or more write reduction factors and one or more write invalidation factors for the workload based on the captured input/output telemetry, the one or more write reduction factors to comprise a first write reduction factor for a first input/output transaction, the one or more write invalidation factors to comprise a first write invalidation factor for a second input/output transaction, wherein the integrated circuitry to determine the one or more write reduction factors and the one or more write invalidation factors comprises the integrated circuitry to:

calculate the first write reduction factor as being equal to a first ratio of a number of first writes to the first persistent storage device to a number of second writes by a host processor; and

calculate the first write invalidation factor as being equal to a second ratio of a number of third writes by the host processor to an amount of storage space occupied by the workload; and

allocate storage for the workload between the first persistent storage device and the second persistent storage device based on each of the one or more write reduction factors and on each of the one or more write invalidation factors.

7. The electronic system of claim 6 , wherein the integrated circuitry is further configured to:

classify the input/output telemetry into two or more data classes;

calculate a write invalidation factor for each of the two or more data classes; and

select a subset of the two or more data classes with the highest write invalidation factors for potential placement of data on the first persistent storage device.

8. The electronic system of claim 7 , wherein the integrated circuitry is further configured to:

calculate a write reduction factor for each data class of the subset of the two or more data classes;

determine if the subset of the two or more data classes meets one or more fitness criteria based on the calculated write invalidation factors and the calculated write reduction factors for the subset of the two or more data classes; and if so determined,

place data that corresponds to the subset of the two or more data classes on the first persistent storage device.

9. The electronic system of claim 8 , wherein the workload is associated with a runtime application and wherein the integrated circuitry is further configured to:

provide closed-loop allocation of storage between the first persistent storage device and the second persistent storage device at runtime based on the calculated write invalidation factors, the calculated write reduction factors, and the one or more fitness criteria.

10. The electronic system of claim 6 , wherein the first persistent storage device comprises three dimensional crosspoint-based media and the second persistent storage device comprises NAND-based media.

11. A method of managing storage, the method comprising:

with integrated circuitry which is coupled to a storage system that includes a first persistent storage device and a second persistent storage device:

managing access to the storage system;

capturing input/output telemetry for a workload on the storage system;

determining one or more write reduction factors and one or more write invalidation factors for the workload based on the captured input/output telemetry, the one or more write reduction factors comprising a first write reduction factor for a first input/output transaction, the one or more write invalidation factors comprising a first write invalidation factor for a second input/output transaction, wherein the determining the one or more write reduction factors and the one or more write invalidation factors comprises:

calculating the first write reduction factor as being equal to a first ratio of a number of first writes to the first persistent storage device to a number of second writes by a host processor; and

calculating the first write invalidation factor as being equal to a second ratio of a number of third writes by the host processor to an amount of storage space occupied by the workload; and

allocating storage for the workload between the first persistent storage device and the second persistent storage device based on each of the one or more write reduction factors and on each of the one or more write invalidation factors.

12. The method of claim 11 , further comprising:

classifying the input/output telemetry into two or more data classes;

calculating a write invalidation factor for each of the two or more data classes; and

selecting a subset of the two or more data classes with the highest write invalidation factors for potential placement of data on the first persistent storage device.

13. The method of claim 12 , further comprising:

calculating a write reduction factor for each data class of the subset of the two or more data classes;

determining if the subset of the two or more data classes meets one or more fitness criteria based on the calculated write invalidation factors and the calculated write reduction factors for the subset of the two or more data classes; and if so determined,

placing data that corresponds to the subset of the two or more data classes on the first persistent storage device.

14. The method of claim 13 , wherein the workload is associated with a runtime application, the method further comprising:

providing closed-loop allocation of storage between the first persistent storage device and the second persistent storage device at runtime based on the calculated write invalidation factors, the calculated write reduction factors, and the one or more fitness criteria.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2025
From: INTEL CORPORATION
To: INTEL NDTM US LLC
Reel/Frame 072293/0744 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2020
From: KARKRA, KAPIL; BARCZAK, MARIUSZ; WYSOCZANSKI, MICHAL; TRIKA, SANJEEV; GUILMART, JAMES
To: INTEL CORPORATION
Reel/Frame 054216/0001 →