Patent US2036561A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5787296A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for reducing power consumption by a disk drive through disk block relocation

Assignee: Intel Corp
•
Filing: 1996-09-27
•
Granted: 1998-07-28
•
Expires: 2016-09-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus is programmed with a plurality of programming instructions for generating, if possible, an alternative disk block allocation for a current disk block allocation that will yield reduced overall power consumption for a sequence of disk accesses. In some embodiments, the programming instructions include the logic for tracing the sequence of disk accesses to determine the current disk block allocation, the logic for generating the alternative disk block allocation, if possible, using the trace results, and the logic for effectuating the alternate disk block allocation, if generated. In one particular embodiment, the logic for generating the alternative disk block allocation employs a random search approach, while in another embodiment, the logic for generating the alternative disk block allocation employs a heuristic approach.

Inventors

  • 👤 Knut Grimsrud
  • 👤 Rick Coulson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 14:58
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0625; G06F1/00; G06F1/26; G06F1/32; G06F1/3203; G06F1/3234; G06F1/325; G06F1/3268; G06F11/00; G06F11/30; G06F11/34; G06F11/3466; G06F11/3485; G06F3/0628; G06F3/0638; G06F3/064; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; G06F3/0676; G11; G11B; G11B20/00; G11B20/10; G11B20/18; G11B20/1883; G11B27/00; G11B27/02; G11B27/031; G11B27/034; G06F11/3442; G11B2220/00; G11B2220/20; Y; Y02; Y02D; Y02D10/00

Claims Analysis

Total Claims: 41
Claim 1
Independent Claim 130 words
An apparatus comprising (a) an execution unit for executing programming instructions; and (b) a storage medium coupled to the execution unit and having stored therein a plurality of programming instructions to be executed by the execution unit for analyzing trace data of a sequence of disk accesses, the trace data including disk locations accessed and the order the disk locations are accessed, and for generating a new set of disk locations to relocate the contents of the accessed disk locations to reduce power consumed by the disk drive in effectuating access of the relocated contents, the new set of disk locations being generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 2
Independent Claim 130 words
An apparatus comprising (a) an execution unit for executing programming instructions; and (b) a storage medium coupled to the execution unit and having stored therein a plurality of programming instructions to be executed by the execution unit for analyzing trace data of a sequence of disk accesses, the trace data including disk locations accessed and the order the disk locations are accessed, and for generating a new set of disk locations to relocate the contents of the accessed disk locations to reduce power consumed by the disk drive in effectuating access of the relocated contents, the new set of disk locations being generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 3
Dependent Claim 29 words
The apparatus as set forth in claim 1, wherein the plurality of programming instructions include programming instructions for tracing the sequence of disk accesses, and generating the trace data.
Claim 4
Dependent Claim 34 words
The apparatus as set forth in claim 1, wherein the plurality of programming instructions include programming instructions for generating a remapping vector mapping the disk locations accessed to the new set of disk locations.
Claim 5
Dependent Claim 34 words
The apparatus as set forth in claim 3, wherein the plurality of programming instructions include programming instructions for relocating the disk locations accessed to the new set of disk locations using the remapping vector.
Claim 6
Dependent Claim 59 words
The apparatus as set forth in claim 1, wherein the plurality of programming instructions include programming instructions for optimizing a cost function that relates power consumption resulted from head movements and active time of electronic components of the disk drive to disk locations and the order the disk locations are accessed, to generate the new set of disk locations.
Claim 7
Dependent Claim 48 words
The apparatus as set forth in claim 5, wherein the plurality of programming instructions include programming instructions for generating a new set of disk locations, and determining if the generated new set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 8
Dependent Claim 54 words
The apparatus as set forth in claim 6, wherein the plurality of programming instructions further include programming instructions for repeating the generation of an arbitrary set of disk locations, and the determination of whether the generated arbitrary set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 9
Dependent Claim 25 words
The apparatus as set forth in claim 5, wherein the plurality of programming instructions include programming instructions for coalescing disk blocks of a disk drive.
Claim 10
Dependent Claim 25 words
The apparatus as set forth in claim 5, wherein the plurality of programming instructions include programming instructions for grouping the disk accesses into access runs.
Claim 11
Dependent Claim 33 words
The apparatus as set forth in claim 9, wherein the plurality of programming instructions further include programming instructions for generating new disk locations for the disk locations accessed by the various access runs.
Claim 12
Dependent Claim 48 words
The apparatus as set forth in claim 10, wherein the plurality of programming instructions further include programming instructions for generating new disk locations from top most portions of a disk region in a top down manner for access runs having run lengths of a first run length kind.
Claim 13
Dependent Claim 48 words
The apparatus as set forth in claim 10, wherein the plurality of programming instructions further include programming instructions for generating new disk locations from bottom most portions of a disk region in a bottom up manner for access runs having run lengths of a first run length kind.
Claim 14
Dependent Claim 63 words
The apparatus as set forth in claim 10, wherein the plurality of programming instructions further include programming instructions for alternatingly generating new disk locations from top most portions of a disk region in a top down manner and from bottom most portions of the disk region in a bottom up manner for access runs having run length of a first run length kind.
Claim 15
Dependent Claim 42 words
The apparatus as set forth in claim 10, wherein the plurality of programming instructions further include programming instructions for generating new disk locations from center portions of a disk region for access runs having run lengths of a first run length kind.
Claim 16
Dependent Claim 58 words
The apparatus as set forth in claim 14, wherein the programming instructions for generating new disk locations from center portions of a disk region for access runs having run lengths of a first run length kind, generates the new disk locations factoring into consideration likelihood of occurrence of interrelated access runs of the same first run length kind.
Claim 17
Dependent Claim 15 words
The apparatus as set forth in claim 1, wherein the apparatus is a computer system.
Claim 18
Dependent Claim 18 words
The apparatus as set forth in claim 16, wherein the programming instructions are part of a service utility.
Claim 19
Dependent Claim 29 words
The apparatus as set forth in claim 16, wherein the programming instructions are part of an installation procedure of an application program that makes the sequence of disk accesses.
Claim 20
Dependent Claim 16 words
The apparatus as set forth in claim 1, wherein the apparatus is a disk drive controller.
Claim 21
Dependent Claim 118 words
A machine implemented method comprising the steps of: a) tracing a sequence of disk accesses, and generating trace data for the disk accesses traced including disk locations accessed and the order the disk locations are accessed; b) generating, if possible, a new set of disk locations to relocate the contents of the disk locations accessed, wherein the new set of disk locations are to yield reduction in power consumption by the disk drive when effectuating access of the relocated contents, and the new set of disk locations are to be generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 22
Dependent Claim 118 words
A machine implemented method comprising the steps of: a) tracing a sequence of disk accesses, and generating trace data for the disk accesses traced including disk locations accessed and the order the disk locations are accessed; b) generating, if possible, a new set of disk locations to relocate the contents of the disk locations accessed, wherein the new set of disk locations are to yield reduction in power consumption by the disk drive when effectuating access of the relocated contents, and the new set of disk locations are to be generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 23
Dependent Claim 46 words
The method as set forth in claim 20, wherein the method further includes the step of (c) generating a remapping vector mapping the disk locations accessed to the new set of disk locations, if step (b) was successful in generating the new set of disk locations.
Claim 24
Dependent Claim 39 words
The machine implemented method as set forth in claim 21, wherein the method further includes the step (d) relocating the disk locations accessed to the new set of disk locations using the remapping vector, if step (c) was performed.
Claim 25
Dependent Claim 51 words
The machine implemented method as set forth in claim 20, wherein step (b) includes optimizing a cost function that relates power consumption of a disk drive resulted from head movements and active time of electronic components of the disk drive to disk locations and the order the disk locations are accessed.
Claim 26
Dependent Claim 49 words
The machine implemented method as set forth in claim 23, wherein the cost function optimization of step (b) includes generating a new set of disk locations, and determining if the generated arbitrary set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 27
Dependent Claim 55 words
The machine implemented method as set forth in claim 24, wherein the cost function optimization of step (b) further includes repeating the generation of an arbitrary set of disk locations, and the determination of whether the generated arbitrary set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 28
Dependent Claim 22 words
The machine implemented method as set forth in claim 23, wherein step (b) further includes coalescing disk blocks of a disk drive.
Claim 29
Dependent Claim 22 words
The machine implemented method as set forth in claim 23, wherein step (b) further includes grouping the disk accesses into access runs.
Claim 30
Dependent Claim 39 words
The machine implemented method as set forth in claim 27, wherein step (b) the generation of new disk locations for the disk locations accessed of step (b) is performed by generating new disk locations for the various access runs.
Claim 31
Dependent Claim 50 words
The machine implemented method as set forth in claim 28, wherein the generation of new disk locations of step (b) includes generating new disk locations from top most portions of a disk region in a top down manner for access runs having run lengths of a first run length kind.
Claim 32
Dependent Claim 50 words
The machine implemented method as set forth in claim 28, wherein the generation of new disk locations of step (b) includes generating new disk locations from bottom most portions of a disk region in a bottom up manner for access runs having run lengths of a first run length kind.
Claim 33
Dependent Claim 65 words
The machine implemented method as set forth in claim 28, wherein the generation of new disk locations of step (b) includes alternatingly generating new disk locations from top most portions of a disk region in a top down manner and from bottom most portions of the disk region in a bottom up manner for access runs having run length of a first run length kind.
Claim 34
Dependent Claim 44 words
The machine implemented method as set forth in claim 28, wherein the generation of new disk locations of step (b) includes generating new disk locations from center portions of a disk region for access runs having run lengths of a first run length kind.
Claim 35
Dependent Claim 54 words
The machine implemented method as set forth in claim 32, wherein the generation of new disk locations from center portions of a disk region for access runs having run lengths of a first run length kind, includes factoring into consideration likelihood of occurrence of interrelated access runs of the same first run length kind.
Claim 36
Dependent Claim 110 words
A storage medium having stored therein a plurality of programming instructions to be executed by an execution unit for analyzing trace data of a sequence of disk accesses, the trace data including disk locations accessed and the order the disk locations are accessed, and for generating a new set of disk locations to relocate the contents of the accessed disk locations to reduce power consumed by disk drive when effectuating access of the relocated contents, the new set of disk locations being generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 37
Dependent Claim 110 words
A storage medium having stored therein a plurality of programming instructions to be executed by an execution unit for analyzing trace data of a sequence of disk accesses, the trace data including disk locations accessed and the order the disk locations are accessed, and for generating a new set of disk locations to relocate the contents of the accessed disk locations to reduce power consumed by disk drive when effectuating access of the relocated contents, the new set of disk locations being generated employing a cost function that relates power consumption by power consuming elements of the disk drive to disk locations and the order the disk locations are accessed.
Claim 38
Dependent Claim 60 words
The storage medium as set forth in claim 34, wherein the plurality of programming instructions include programming instructions for optimizing a cost function that relates power consumption resulted from head movements and active time of electronic components of the disk drive to disk locations and the order the disk locations are accessed, to generate the new set of disk locations.
Claim 39
Dependent Claim 49 words
The storage medium as set forth in claim 35, wherein the plurality of programming instructions include programming instructions for generating a new set of disk locations, and determining if the generated new set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 40
Dependent Claim 55 words
The storage medium as set forth in claim 36, wherein the plurality of programming instructions further include programming instructions for repeating the generation of an arbitrary set of disk locations, and the determination of whether the generated arbitrary set of disk locations yields reduction in power consumption by the disk drive using the cost function.
Claim 41
Dependent Claim 26 words
The storage medium as set forth in claim 35, wherein the plurality of programming instructions include programming instructions for coalescing disk blocks of a disk drive.

References Cited (Backward Citations)

US4536837A Cited
US5175853A Cited
US5274826A Cited
US5274834A Cited
US5291604A Cited
US5652873A Cited
US5471604A Cited
US5423046A Cited
US5600840A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-07-27 2002-01-26 2002-07-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-07-27 2006-01-26 2006-07-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-07-27 2010-01-26 2010-07-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag