IP Library Granted Patent US 12693786
Granted Patent B2
US 12693786 · App. 18/961,080 · Granted Jul 28, 2026

Systems, methods, and media for recovering worker shares from read prioritization

Inventors: Jonathan de Vries (Folsom, CA); Neelesh Vemula (Santa Clara, CA)
Assignee: SK hynix NAND Product Solutions Corp.
G06F3/0613G06F3/0653G06F3/0679
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 12693786
App. No.
18/961,080
Granted
Jul 28, 2026
Kind
B2
Abstract

Recovering worker shares from read prioritization including: while read accesses (RA) to a storage device (SD) are being prioritized over write accesses (WA) to the SD: determining a first count of RA to the SD; performing a first adjusting of a base read share percentage (RSP) to a first adjusted RSP for RA to the SD based on the first count of RA; and controlling read access to the SD based on the first adjusting; determining that RA to the SD have completed being prioritized over WA to the SD; and after RA to the SD have completed being prioritized: determining a second count of WA to the SD; performing a second adjusting of the first adjusted RSP to a second adjusted RSP for RA to the SD based on the second count of WA; and controlling write access to the SD based on the second adjusting.

Claims (47)

1 . A system for recovering worker shares from read prioritization, comprising:

memory; and

at least one hardware processor collectively configured to at least:

determine that read accesses to a storage device are being prioritized over write accesses to the storage device;

while read accesses to the storage device are being prioritized over write accesses to the storage device:

determine a first count of read accesses to the storage device;

perform a first adjusting of a base read share percentage to a first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses such that the first adjusted read share percentage decreases as the first count of read accesses increases; and

control read access to the storage device based on the first adjusting;

determine that read accesses to the storage device have completed being prioritized over write accesses to the storage device; and

after read accesses to the storage device have completed being prioritized over write accesses to the storage device:

determine a second count of write accesses to the storage device;

performing a second adjusting of the first adjusted read share percentage to a second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses such that the second adjusted read share percentage increases as the second count of write accesses increases; and

control write access to the storage device based on the second adjusting.

2 . The system of claim 1 , wherein the first adjusting of the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses comprises adjusting the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on a control parameter raised to the power of the first count of read accesses, wherein the control parameter is a value greater than zero and less than one.

3 . The system of claim 1 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

4 . The system of claim 1 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a minimum of: the base read share percentage; and the first adjusted read share percentage divided by a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

5 . The system of claim 1 , wherein the at least one hardware processor is further collectively configured to at least determine an adjusted worker read share percentage as a base worker read share percentage multiplied by the first adjusted read share percentage divided by the base read share percentage.

6 . A method for recovering worker shares from read prioritization, comprising:

determining using at least one hardware processor that read accesses to a storage device are being prioritized over write accesses to the storage device;

while read accesses to the storage device are being prioritized over write accesses to the storage device:

determining a first count of read accesses to the storage device;

performing a first adjusting of a base read share percentage to a first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses such that the first adjusted read share percentage decreases as the first count of read accesses increases; and

controlling read access to the storage device based on the first adjusting;

determining that read accesses to the storage device have completed being prioritized over write accesses to the storage device; and

after read accesses to the storage device have completed being prioritized over write accesses to the storage device:

determining a second count of write accesses to the storage device;

performing second adjusting of the first adjusted read share percentage to a second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses such that the second adjusted read share percentage increases as the second count of write accesses increases; and

controlling write access to the storage device based on the second adjusting.

7 . The method of claim 6 , wherein the first adjusting of the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses comprises adjusting the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on a control parameter raised to the power of the first count of read accesses, wherein the control parameter is a value greater than zero and less than one.

8 . The method of claim 6 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

9 . The method of claim 6 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a minimum of: the base read share percentage; and the first adjusted read share percentage divided by a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

10 . The method of claim 6 , further comprising determining an adjusted worker read share percentage as a base worker read share percentage multiplied by the first adjusted read share percentage divided by the base read share percentage.

11 . A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for recovering worker shares from read prioritization, the method comprising:

determining that read accesses to a storage device are being prioritized over write accesses to the storage device;

while read accesses to the storage device are being prioritized over write accesses to the storage device:

determining a first count of read accesses to the storage device;

performing a first adjusting of a base read share percentage to a first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses such that the first adjusted read share percentage decreases as the first count of read accesses increases; and

controlling read access to the storage device based on the first adjusting;

determining that read accesses to the storage device have completed being prioritized over write accesses to the storage device; and

after read accesses to the storage device have completed being prioritized over write accesses to the storage device:

determining a second count of write accesses to the storage device;

performing a second adjusting of the first adjusted read share percentage to a second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses such that the second adjusted read share percentage increases as the second count of write accesses increases; and

controlling write access to the storage device based on the second adjusting.

12 . The non-transitory computer-readable medium of claim 11 , wherein the first adjusting of the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on the first count of read accesses comprises adjusting the base read share percentage to the first adjusted read share percentage for read accesses to the storage device based on a control parameter raised to the power of the first count of read accesses, wherein the control parameter is a value greater than zero and less than one.

13 . The non-transitory computer-readable medium of claim 11 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

14 . The non-transitory computer-readable medium of claim 11 , wherein the second adjusting of the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on the second count of write accesses comprises adjusting the first adjusted read share percentage to the second adjusted read share percentage for read accesses to the storage device based on a minimum of: the base read share percentage; and the first adjusted read share percentage divided by a control parameter raised to a product of a scaling factor and the second count of write accesses, wherein the control parameter is a value greater than zero and less than one and the scaling factor is a value greater than one.

15 . The non-transitory computer-readable medium of claim 11 , wherein the method further comprises determining an adjusted worker read share percentage as a base worker read share percentage multiplied by the first adjusted read share percentage divided by the base read share percentage.