IP Library › Granted Patent US 6,965,965
Granted Patent B2
US 6,965,965 · App. 10/163,986 · Granted Nov 15, 2005

Dynamic response shaping for command aging

Assignee: International Business Machines Corporation
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 6,965,965
App. No.
10/163,986
Granted
Nov 15, 2005
Kind
B2
Abstract

The present invention provides a method, apparatus and article of manufacture for selecting commands to execute from a command queue in a data storage device. The present invention reduces maximum service times under random queued workloads by executing the oldest command in the queue at a constant and predetermined rate. This yields a minimal yet predictable performance penalty, while significantly reducing maximum service times.

Claims (30)

1. A method for selecting commands for execution in a data storage device, the method comprising the steps of:

queuing one or more commands for the data storage device; and

selecting a next command for execution from the queued commands, wherein the oldest queued command is periodically selected as the next command at a constant, predetermined rate.

2. The method of claim 1 , wherein the oldest queued command is periodically selected as the next command every 1 of N times, wherein N is at least 2.

3. The method of claim 1 , wherein the oldest queued command is periodically selected as the next command only if the age of the oldest queued command exceeds a predetermined minimum age threshold value.

4. The method of claim 3 , wherein the minimum age threshold value is specified in a mode page byte within the data storage device.

5. A method for selecting commands for execution in a data storage device, the method comprising the steps of:

queuing one or more commands for the data storage device;

creating a group of one or more old commands selected from the queued commands; and

selecting a next command for execution from the queued commands, wherein one of the group of old commands is periodically selected as the next command at a constant, predetermined rate.

6. The method of claim 5 , wherein the step of creating a group of one or more old commands selected from the queued commands includes the steps of:

determining an age of the oldest queued command; and

selecting all commands that are within a predetermined delta age from the age of the oldest queued command.

7. The method of claim 5 , wherein the predetermined delta age is stored in a mode page byte within the data storage device.

8. The method of claim 5 , wherein the periodic selection of one of the group of old commands is made to minimize command execution time.

9. The method of claim 5 , wherein the periodic selection of one of the group of old commands is made only if the age of the selected command exceeds a predetermined minimum age threshold value.

10. The method of claim 9 , wherein the minimum age threshold value is specified in a mode page byte within the data storage device.

11. A data storage device, comprising:

one or more stacked disks; and

a controller for queuing one or more commands for the one or more stacked disks, and for selecting a next command for execution from the queued commands;

wherein the oldest queued command is periodically selected as the next command at a constant, predetermined rate.

12. The data storage device of claim 11 , wherein the oldest queued command is periodically selected as the next command every 1 of N times, wherein N is at least 2.

13. The data storage device of claim 11 , wherein the oldest queued command is periodically selected as the next command only if the oldest queued command exceeds a predetermined minimum age threshold value.

14. The data storage device of claim 11 , wherein the minimum age threshold value is specified in a mode page byte within the data storage device.

15. An article of manufacture embodying logic for selecting commands for execution in a data storage device, comprising:

queuing one or more commands for the data storage device; and

selecting a next command for execution from the queued commands, wherein the oldest queued command is periodically selected as the next command at a constant, predetermined rate.

16. The article of manufacture of claim 15 , wherein the oldest queued command is selected as the next command every 1 of N times, wherein N is at least 2.

17. The article of manufacture of claim 15 , wherein the oldest queued command is periodically selected as the next command only if the age of the oldest queued command exceeds a predetermined minimum age threshold value.

18. The article of manufacture of claim 17 , wherein the minimum age threshold value is specified in a mode page byte within the data storage device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2002
From: ESPESETH, ADAM MICHAEL; HALL, DAVID ROBISON
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 012986/0862 →
Continuity (1)
Related Publication 20030229755A1 · Dec 11, 2003