IP Library › Granted Patent US 11,886,922
Granted Patent B2
US 11,886,922 · App. 17/732,867 · Granted Jan 30, 2024

Scheduling input/output operations for a storage system

Inventors: Vincent Wang (Mountain View, CA); Mark Fay (Mountain View, CA); Jun He (Mountain View, CA); Renjie Fan (San Jose, CA); Kiron Vijayasankar (Los Altos, CA); Yuval Frandzel (Foster City, CA)
Assignee: PURE STORAGE, INC.
G06F9/505G06F3/067G06F3/0611G06F3/0613G06F3/0659G06F3/0665G06F3/0689G06F9/4881G06F9/4887G06F9/5038G06F13/16G06F13/1642G06F3/061
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,886,922
App. No.
17/732,867
Granted
Jan 30, 2024
Kind
B2
Abstract

A method of scheduling input/output operations for a storage system including determining a deadline for a storage operation, wherein the deadline is dependent on an expected latency of the storage operation; adding the storage operation to a queue of storage operations; and reordering the queue dependent upon the deadline of the storage operation and one or more deadlines of one or more storage operations in the queue of storage operations.

Claims (34)

1. A method comprising:

receiving a request to perform a storage operation from an entity;

determining a deadline for performance of the storage operation, wherein the deadline is dependent on an expected latency of the storage operation;

adding the storage operation to a particular queue of a plurality of queues, wherein the particular queue is assigned to the entity and comprises other storage operations to be performed for the entity; and

reordering, by a processing device, the particular queue dependent upon the deadline of the storage operation and one or more corresponding deadlines of one or more of the other storage operations in the particular queue.

2. The method of claim 1 , wherein determining the deadline comprises combining the expected latency of the storage operation and a current time.

3. The method of claim 2 , wherein the current time is a proxy for time.

4. The method of claim 1 , wherein the particular queue comprises storage operations of a single storage operation type.

5. The method of claim 1 , wherein the particular queue comprises storage operations for a single storage die of a storage device.

6. The method of claim 1 , wherein the particular queue comprises storage operations for a single communication channel of a storage device.

7. The method of claim 1 , wherein the particular queue is reordered in an ascending order of deadlines for the storage operation and the one or more of the other storage operations.

8. A non-transitory computer readable storage medium storing instructions, which when executed, cause a processing device of a storage controller to:

receive a request to perform a storage operation from an entity;

determine a deadline for performance of the storage operation, wherein the deadline is dependent on an expected latency of the storage operation;

add the storage operation to a particular queue of a plurality of queues, wherein the particular queue is assigned to the entity and comprises other storage operations to be performed for the entity; and

reordering the queue dependent upon the deadline of the storage operation and one or more corresponding deadlines of one or more of the other storage operations in the particular queue.

9. The non-transitory computer readable storage medium of claim 8 , wherein determining the deadline comprises combining the expected latency of the storage operation and a current time.

10. The non-transitory computer readable storage medium of claim 9 , wherein the current time is a proxy for time.

11. The non-transitory computer readable storage medium of claim 8 , wherein the particular queue comprises storage operations of a single storage operation type.

12. The non-transitory computer readable storage medium of claim 8 , wherein the particular queue of storage operations comprises storage operations for a single storage die of a storage device.

13. The non-transitory computer readable storage medium of claim 8 , wherein the particular queue comprises storage operations for a single communication channel of a storage device.

14. The non-transitory computer readable storage medium of claim 8 , wherein the particular queue is reordered in an ascending order of deadlines for the storage operation and the one or more of the other storage operations.

15. A storage system comprising:

a plurality of storage devices; and

a storage controller operatively coupled to the plurality of storage devices, the storage controller comprising a processing device, the processing device configured to:

receive a request to perform a storage operation from an entity;

determine a deadline for performance of the storage operation, wherein the deadline is dependent on an expected latency of the storage operation;

add the storage operation to a particular queue of a plurality of queues, wherein the particular queue is assigned to the entity and comprises other storage operations to be performed for the entity; and

reorder the queue dependent upon the deadline of the storage operation and one or more corresponding deadlines of one or more of the other storage operations in the particular queue.

16. The storage system of claim 15 , wherein determining the deadline comprises combining the expected latency of the storage operation and a current time.

17. The storage system of claim 16 , wherein the current time is a proxy for time.

18. The storage system of claim 15 , wherein the particular queue comprises storage operations of a single storage operation type.

19. The storage system of claim 15 , wherein the particular queue comprises storage operations for a single storage die of a storage device.

20. The storage system of claim 15 , wherein the particular queue is reordered in an ascending order of deadlines for the storage operation and the one or more of the other storage operations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2022
From: WANG, VINCENT; FAY, MARK; HE, JUN; FAN, RENJIE; VIJAYASANKAR, KIRON; FRANDZEL, YUVAL
To: PURE STORAGE, INC.
Reel/Frame 061909/0162 →
Continuity (6)
Continuation In Part 17150640 · Jan 15, 2021
Continuation In Part 16743285 · Jan 15, 2020
Continuation 15385048 · Dec 20, 2016
Continuation 15382888 · Dec 19, 2016
Provisional Application 62384691 · Sep 7, 2016
Related Publication 20220261286A1 · Aug 18, 2022
Cited By (3)
US 12,242,752 US 12,242,896 US 12,541,329