IP Library Granted Patent US 11,074,011
Granted Patent B2
US 11,074,011 · App. 16/359,662 · Granted Jul 27, 2021

Solid state drive latency estimation interface for host performance tuning

Inventor: Ramanathan Muthiah (Bangalore, IN)
Assignee: Western Digital Technologies, Inc.
G06F3/0659G06F3/0607G06F3/0611G06F3/0679G06F3/0688G06F2212/7207
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 11,074,011
App. No.
16/359,662
Granted
Jul 27, 2021
Kind
B2
Abstract

A solid state drive system and method receives read commands, write commands, and/or file system updates. The solid state drive system then determines the latency estimate for performing each of those commands asynchronously. The solid state drive system may utilize internal processes to determine the latency estimate. The latency estimate may include random access latency, block erase time, outstanding workload latency, garbage collection time, metadata write time, etc. The latency estimate is then returned to the host device. The host device may utilize the latency estimate to workload balance solid state drive systems.

Claims (62)

1. A method solid state drive comprising:

receiving, at a solid state drive and from a host device, a command regarding a group of files, wherein execution of the command by the solid state drive involves a file system update; and

reporting, from the solid state drive to the host device, prior to completion of the command by the solid state drive, a latency estimate comprising:

a block erase time estimate;

a swap time estimate for cached flash translation layer pages;

a garbage collection time estimate; and

a random access latency estimate for the group of files based on a number of random memory accesses needed to perform the file system update.

2. The method of claim 1 , further comprising:

receiving, at the solid state drive and from the host device, information about at least one of:

a number of files in the group of files; and

a size of each file in the group of files; and

determining, using the information received, the random access latency estimate for the group of files.

3. The method of claim 1 , wherein the command comprises a write command or an erase command.

4. The method of claim 1 , wherein:

the random access latency estimate is further based on a random access time value; and

the random access time value was configured in the solid state drive at manufacturing time.

5. The method of claim 1 , wherein:

the random access latency estimate is further based on a random access time value; and

the solid state drive comprises learning logic to dynamically determine the random access time value over time.

6. The method of claim 1 , wherein the latency estimate further comprises

an outstanding workload completion time estimate.

7. The method of claim 6 , further comprising:

reporting, from the solid state drive to the host device, a time period needed to format the solid state drive to perform the file system update.

8. The method of claim 6 , wherein:

the solid state drive utilizes a non-blocking host interface protocol; and

the outstanding workload completion time estimate excludes a latency of commands received prior to the command and having a lower priority than the command.

9. A solid state drive comprising:

a flash translation layer comprising at least one command queue;

a host device interface configured to:

receive a command from a host device, the command involving a file system update for a group of files; and

latency estimation logic coupled to the host device interface; and

a workload monitor coupled to the latency estimation logic and configured to determine a workload completion time estimate based, at least in part, on contents of the at least one command queue;

wherein the latency estimation logic is configured to:

perform a latency estimate on the command received from the host device, the latency estimate based on a block erase time estimate, a swap time estimate for cached flash translation layer pages, a garbage collection time estimate, and the workload completion time estimate provided from the workload monitor; and

report the latency estimate to the host device prior to completion of the command.

10. The solid state drive of claim 9 , wherein:

the host device interface is further configured to receive, from the host device and in association with the command,

information about at least one of:

a number of files in the group of files; and

a total amount of data in the group of files; and

the latency estimation logic is further configured to use the received information to perform the latency estimate.

11. The solid state drive of claim 9 , wherein the command comprises one or more of a write command and an erase command.

12. The solid state drive of claim 10 , wherein the latency estimate comprises a random access latency estimate based on the received information.

13. The solid state drive of claim 12 , wherein the random access latency estimate is based on a number of random memory accesses needed to perform the file system update.

14. The solid state drive of claim 12 , wherein the random access latency estimate is based on a random access time value configured in the solid state drive at manufacturing time.

15. The solid state drive of claim 12 , further comprising learning logic configured to:

dynamically estimate a random access time value over time; and

apply the random access time value to determine the random access latency estimate.

16. The solid state drive of claim 9 , wherein the latency estimate further comprises a file system update time estimate.

17. The solid state drive of claim 16 , wherein the file system update time estimate comprises a time period needed to format the solid state drive.

18. The solid state drive of claim 9 , wherein:

the host device interface utilizes a non-blocking host interface protocol; and

the workload completion time estimate excludes a latency of commands received prior to the command and having a lower priority than the command.

19. A solid state drive comprising:

means for receiving from a host device a command;

means for determining a time estimate for completion of the command by the solid state drive, the time estimate comprising an accumulation of a block erase time estimate, a swap time estimate for cached flash translation layer pages, a garbage collection time estimate, and an outstanding workload completion time estimate; and

means for reporting the time estimate to the host device prior to completion of the command.

20. The solid state drive of claim 19 , wherein the means for determining the time estimate comprises:

means for determining the garbage collection time estimate;

means for determining the swap time estimate for the cached flash translation layer pages;

means for determining the block erase time estimate; and

means for determining the outstanding workload completion time estimate.

Assignments (9)
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT PORTION OF WESTERN DIGITAL CORPORATION TO WESTERN DIGITAL TECHNOLOGIES, INC. PREVIOUSLY RECORDED ON REEL 048780 FRAME 0257. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 20, 2019
From: MUTHIAH, RAMANATHAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 049839/0793 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2019
From: MUTHIAH, RAMANATHAN
To: WESTERN DIGITAL CORPORATION
Reel/Frame 048780/0257 →
Cited By (1)
US 12,498,874