IP Library Granted Patent US 9,182,922
Granted Patent B2
US 9,182,922 · App. 14/024,240 · Granted Nov 10, 2015

Dynamically adjusting write pacing by calculating a pacing level and then delaying writes for a first channel command word (CCW) based on pacing level

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 9,182,922
App. No.
14/024,240
Granted
Nov 10, 2015
Kind
B2
Abstract

For dynamically adjusting write pacing, a calculation module calculates an interval as a maximum threshold for a primary volume divided by a first maximum pacing level for a first importance level. The calculation module further calculates a first pacing level as a number of record sets that have not been mirrored to a secondary volume divided by the interval. The first pacing level is set to the first maximum pacing level if the first pacing level is greater than the first maximum pacing level. The calculation module also selects a first pacing delay associated with the first pacing level from a delay table. A pacing module delays writes for a first channel command word writing to the primary volume by the first pacing delay.

Claims (35)

1. A method for dynamically adjusting write pacing comprising:

calculating, by use of a processor, an interval INT as a maximum threshold T for a primary volume of a primary storage subsystem divided by a first maximum pacing level MP1 for a first importance level, wherein INT=T/MP1 and writes to the primary volume are stored as record sets in a cache and mirrored to a secondary volume of a secondary storage subsystem;

calculating a first pacing level as a number of record sets that have not been mirrored to the secondary volume divided by the interval, wherein the first pacing level is set to the first maximum pacing level if the first pacing level is greater than the first maximum pacing level;

selecting a first pacing delay associated with the first pacing level from a delay table; and

delaying writes for a first channel command word (CCW) writing to the primary volume by the first pacing delay.

2. The method of claim 1 , further comprising associating a maximum pacing level with each of a plurality of importance levels.

3. The method of claim 2 , wherein a set session characteristics define subsystem operation (DSO) associates the maximum pacing level with each of the plurality of importance levels.

4. The method of claim 1 , wherein the primary volume is managed by a Z/OS® operating system.

5. The method of claim 4 , wherein the record sets are mirrored to the secondary volume with a Z/OS® GLOBAL MIRROR™ data mover.

6. The method of claim 1 , further comprising associating a pacing delay with each of a plurality of pacing levels.

7. The method of claim 1 , further comprising associating the maximum threshold to the primary volume.

8. An apparatus comprising:

a calculation module calculating an interval INT as a maximum threshold T for a primary volume of a primary storage subsystem divided by a first maximum pacing level MP1 for a first importance level, wherein INT=T/MP1 and writes toto the primary volume are stored as record sets in a cache and mirrored to a secondary volume of a secondary storage subsystem, calculating a first pacing level as a number of record sets that have not been mirrored to the secondary volume divided by the interval, wherein the first pacing level is set to the first maximum pacing level if the first pacing level is greater than the first maximum pacing level, and selecting a first pacing delay associated with the first pacing level from a delay table;

a pacing module delaying writes for a first channel command word (CCW) writing to the primary volume by the first pacing delay; and

wherein at least a portion of the calculation module and the pacing module comprise one or more of hardware and program code, the program code stored on one or more computer readable storage media.

9. The apparatus of claim 8 , further comprising associating a maximum pacing level with each of a plurality of importance levels.

10. The apparatus of claim 9 , wherein a set session characteristics define subsystem operation (DSO) associates the maximum pacing level with each of the plurality of importance levels.

11. The apparatus of claim 8 , further comprising associating a pacing delay with each of a plurality of pacing levels.

12. The apparatus of claim 8 , further comprising associating the maximum threshold to the primary volume.

13. A computer program product for dynamically adjusting write pacing, the computer program product comprising a computer readable storage medium having program code embodied therein, the program code readable/executable by a processor to:

calculate an interval INT as a maximum threshold T for a primary volume of a primary storage subsystem divided by a first maximum pacing level for a first importance level MP1, wherein INT=T/MP1 and writes to the primary volume are stored as record sets in a cache and mirrored to a secondary volume of a secondary storage subsystem;

calculate a first pacing level as a number of record sets that have not been mirrored to the secondary volume divided by the interval, wherein the first pacing level is set to the first maximum pacing level if the first pacing level is greater than the first maximum pacing level;

select a first pacing delay associated with the first pacing level from a delay table; and

delay writes for a first channel command word (CCW) writing to the primary volume by the first pacing delay.

14. The computer program product of claim 13 , further comprising associating a maximum pacing level MP with each of a plurality of importance levels.

15. The computer program product of claim 14 , wherein a set session characteristics define subsystem operation (DSO) associates the maximum pacing level with each of the plurality of importance levels.

16. The computer program product of claim 13 , wherein the primary volume is managed by a Z/OS® operating system.

17. The computer program product of claim 13 , wherein the record sets are mirrored to the secondary volume with a Z/OS® GLOBAL MIRROR™ data mover.

18. The computer program product of claim 13 , further comprising associating a pacing delay with each of a plurality of pacing levels.

19. The computer program product of claim 13 , further comprising associating the maximum threshold to the primary volume.

20. A method for integrating a computer program product, comprising integrating program code into a computing system, wherein the code in combination with the computing system performs the following:

calculating an interval INT as a maximum threshold T for a primary volume of a primary storage subsystem divided by a first maximum pacing level MP1 for a first importance level, wherein INT=T/MP1 and writes to the primary volume are stored as record sets in a cache and mirrored to a secondary volume of a secondary storage subsystem;

calculating a first pacing level as a number of record sets that have not been mirrored to the secondary volume divided by the interval, wherein the first pacing level is set to the first maximum pacing level if the first pacing level is greater than the first maximum pacing level;

selecting a first pacing delay associated with the first pacing level from a delay table; and

delaying writes for a first channel command word (CCW) writing to the primary volume by the first pacing delay.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded May 12, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES U.S. INC.
Reel/Frame 056987/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 20, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: GLOBALFOUNDRIES INC.
Reel/Frame 054636/0001 →
SECURITY AGREEMENT Recorded Nov 29, 2018
From: GLOBALFOUNDRIES INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049490/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA PREVIOUSLY RECORDED ON REEL 036331 FRAME 0044. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 21, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GLOBALFOUNDRIES U.S.2 LLC
Reel/Frame 036953/0823 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2015
From: GLOBALFOUNDRIES U.S. 2 LLC; GLOBALFOUNDRIES U.S. INC.
To: GLOBALFOUNDRIES INC.
Reel/Frame 036779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2015
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: GLOBALFOUNDRIES U.S. 2 LLC COMPANY
Reel/Frame 036331/0044 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2013
From: DIEL, EDUARD A.; KALOS, MATTHEW J.; MCCLURE, ALAN G.; MELLGREN, CAROL S.; SANCHEZ, ALFRED E.; SHACKELFORD, DAVID M.; STANLEY, WARREN K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031186/0848 →