IP Library › Granted Patent US 11,269,519
Granted Patent B2
US 11,269,519 · App. 16/734,223 · Granted Mar 8, 2022

Queue management in storage systems

Inventors: Kushal Patel (Pune, IN); Ankur Srivastava (Pune, IN); Subhojit Roy (Pune, IN); Sarvesh S. Patel (Pune, IN)
Assignee: International Business Machines Corporation
G06F3/0611G06F3/0658G06F3/0659G06F3/0679G06F13/20
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,269,519
App. No.
16/734,223
Filed
Jan 3, 2020
Granted
Mar 8, 2022
Kind
B2
Art Unit
2181
USPC
711/103
Abstract

A computer-implemented method, according to one embodiment, includes initiating, by a computer, a connection with a storage controller. A determination is made, by the computer, if a number of compressed volumes on a target side present in a storage system comprising the storage controller. In response to determining at least one compressed volume, a number of queues are dedicated based on the number of compressed volumes. The number of dedicated queues are sent to the storage controller. Moreover, the number of dedicated queues are created. Compressed input/outputs (I/Os) are sent through at least one of the dedicated queues to at least one of the at least one compressed volume via the storage controller.

Claims (47)

1. A computer-implemented method, comprising:

initiating, by a computer, a connection with a storage controller;

determining, by the computer, a number of compressed volumes on a target side present in a storage system comprising the storage controller;

in response to determining at least one compressed volume, dedicating, by the computer, a number of queues based on the number of compressed volumes;

sending, by the computer, the number of dedicated queues to the storage controller;

creating, by the computer, the number of dedicated queues;

sending, by the computer, compressed input/outputs (I/O s ) through at least one of the dedicated queues to at least one of the at least one compressed volume via the storage controller, wherein the dedicated queues are dedicated for only the compressed I/O s ; and

sending, by the computer, non-compressed I/O s only through a non-dedicated queue to a non-compressed volume on the target side present in the storage system via the storage controller,

wherein the storage controller does not check whether the I/O s are compressed or non-compressed while operating.

2. The computer-implemented method of claim 1 , comprising updating, by the computer, the number of dedicated queues in response to detecting deletion of at least one of the at least one compressed volumes.

3. The computer-implemented method of claim 1 , comprising updating, by the computer, the number of dedicated queues in response to the passage of a predefined period of time since a compressed I/O is sent.

4. The computer-implemented method of claim 1 , comprising updating, by the computer, the number of dedicated queues in response to sending a predefined number of compressed I/O s.

5. The computer-implemented method of claim 1 , comprising updating, by the computer, the number of dedicated queues in response to sending a predefined number of non-compressed I/O s.

6. The computer-implemented method of claim 1 , wherein the dedicated queues are mapped to relatively more powerful central processing units (CPUs) compared to other CPUs in the storage system.

7. A computer program product, the computer program product comprising:

one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions comprising:

program instructions to initiate a connection with a storage controller;

program instructions to determine a number of compressed volumes on a target side present in a storage system comprising the storage controller;

program instructions to, in response to determining at least one compressed volume, dedicate a number of queues based on the number of compressed volumes;

program instructions to send the number of dedicated queues to the storage controller;

program instructions to create the number of dedicated queues;

program instructions to send compressed input/outputs (I/O s ) through at least one of the dedicated queues to at least one of the at least one compressed volume via the storage controller, wherein the dedicated queues are dedicated for only the compressed I/O s ; and

program instructions to send non-compressed I/O s only through a non-dedicated queue to a non-compressed volume on the target side present in the storage system via the storage controller,

wherein the storage controller does not check whether the I/O s are compressed or non-compressed while operating.

8. The computer program product of claim 7 , comprising program instructions to update the number of dedicated queues in response to detecting deletion of at least one of the at least one compressed volumes.

9. The computer program product of claim 7 , comprising program instructions to update the number of dedicated queues in response to the passage of a predefined period of time since a compressed I/O is sent.

10. The computer program product of claim 7 , comprising program instructions to update the number of dedicated queues in response to sending a predefined number of compressed I/O s.

11. The computer program product of claim 7 , comprising program instructions to update the number of dedicated queues in response to sending a predefined number of non-compressed I/O s.

12. The computer program product of claim 7 , wherein the dedicated queues are mapped to relatively more powerful central processing units (CPUs) compared to other CPUs in the storage system.

13. A system, comprising:

a processor; and

logic integrated with the processor, executable by the processor, or integrated with and executable by the processor, the logic being configured to:

initiate a connection with a storage controller;

determine a number of compressed volumes on a target side present in a storage system comprising the storage controller;

in response to determining at least one compressed volume, dedicate a number of queues based on the number of compressed volumes;

send the number of dedicated queues to the storage controller;

create the number of dedicated queues;

send compressed input/outputs (I/O s ) through at least one of the dedicated queues to at least one of the at least one compressed volume via the storage controller, wherein the dedicated queues are dedicated for only the compressed I/O s ; and

send non-compressed I/O s only through a non-dedicated queue to a non-compressed volume on the target side present in the storage system via the storage controller,

wherein the storage controller does not check whether the I/O s are compressed or non-compressed while operating.

14. The system of claim 13 , comprising logic configured to update the number of dedicated queues in response to detecting deletion of at least one of the at least one compressed volumes.

15. The system of claim 13 , comprising logic configured to update the number of dedicated queues in response to the passage of a predefined period of time since a compressed I/O is sent.

16. The system of claim 13 , comprising logic configured to update the number of dedicated queues in response to sending a predefined number of compressed I/O s.

17. The system of claim 13 , comprising logic configured to update the number of dedicated queues in response to sending a predefined number of non-compressed I/O s.

18. The system of claim 13 , wherein the dedicated queues are mapped to relatively more powerful central processing units (CPUs) compared to other CPUs in the storage system.

19. The computer-implemented method of claim 1 , wherein the queues are dedicated sequentially for avoiding bottlenecks.

20. The computer program product of claim 7 , wherein the queues are dedicated sequentially for avoiding bottlenecks.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 26, 2020
From: PATEL, KUSHAL; SRIVASTAVA, ANKUR; ROY, SUBHOJIT; PATEL, SARVESH S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 051622/0154 →
Continuity (1)
Related Publication 20210208787A1 · Jul 8, 2021