IP Library Granted Patent US 9,098,400
Granted Patent B2
US 9,098,400 · App. 13/664,753 · Granted Aug 4, 2015

Dynamic tuning of internal parameters for solid-state disk based on workload access patterns

Inventors: Kaoutar El Maghraoui (Yorktown Heights, NY); Hubertus Franke (Cortlandt Manor, NY); Gokul B. Kandiraju (Tarrytown, NY)
Assignee: International Business Machines Corporation
G06F12/0246G06F3/061G06F3/064G06F3/0631G06F3/0679G06F2212/7205G06F2212/7207G06F2212/7211
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,098,400
App. No.
13/664,753
Granted
Aug 4, 2015
Kind
B2
Abstract

A system and method for tuning a solid state disk memory includes computing a metric representing a usage trend of a solid state disk memory. Whether one or more parameters need to be adjusted to provide a change in performance is determined. The parameter is adjusted in accordance with the metric to impact the performance of running workloads. These steps are repeated after an elapsed time interval.

Claims (38)

1. A method for tuning a solid state disk memory, comprising:

computing a metric representing a usage trend of a solid state disk memory;

determining whether one or more parameters need to be adjusted to provide a change in performance;

adjusting the one or more parameters in accordance with the metric to change the performance; and

repeating the steps of computing, determining and adjusting after an elapsed time interval,

wherein computing a metric includes computing a linearity metric by comparing usage pattern data over at least two time intervals.

2. The method as recited in claim 1 , wherein computing a metric includes employing a regression technique to compare usage pattern data over time.

3. The method as recited in claim 1 , wherein computing a metric includes employing a logical to physical translation table to obtain usage pattern data.

4. The method as recited in claim 1 , wherein determining whether one or more parameters need to be adjusted includes comparing metrics or historic changes in metrics to a lookup table to determine an adjustment type.

5. The method as recited in claim 1 , wherein determining whether one or more parameters need to be adjusted includes computing an adjustment type by inputting metrics or historic changes in metrics into a formula.

6. The method as recited in claim 1 , wherein adjusting the one or more parameters includes comparing metrics or historic changes in metrics to a lookup table to an adjustment amount.

7. The method as recited in claim 1 , wherein adjusting the one or more parameters includes computing an adjustment amount by inputting metrics or historic changes in metrics into a formula.

8. The method as recited in claim 1 , wherein adjusting the one or more parameters includes adjusting the one or more parameters dynamically during usage of the solid state disk.

9. The method as recited in claim 1 , wherein adjusting the one or more parameters includes adjusting one or more of: a log block write mechanism, a garbage collector and/or wear-leveling mechanism.

10. The method as recited in claim 1 , wherein adjusting the one or more parameters includes adjusting one or more of: a number of data blocks versus log blocks, a number of pages to prefetch, a block-based or page-based mode, a granularity of memory size, and/or a type of flash memory access.

11. A method for tuning a solid state disk memory, comprising:

computing a linearity metric by employing a logical to physical translation table to obtain usage pattern data representing a usage trend of a solid state disk memory over two or more time intervals and comparing the usage pattern data over the two or more time intervals;

determining whether a parameter needs to be adjusted to provide a change in performance by consulting a lookup table or formula; and

adjusting the parameter in accordance with the metric to change the performance.

12. The method as recited in claim 11 , wherein computing a linearity metric includes employing a regression technique to compare usage pattern data over time.

13. The method as recited in claim 11 , wherein determining whether a parameter needs to be adjusted includes comparing metrics or historic changes in metrics to the lookup table to determine an adjustment type.

14. The method as recited in claim 11 , wherein determining whether a parameter needs to be adjusted includes computing an adjustment type by inputting metrics or historic changes in metrics into the formula.

15. The method as recited in claim 11 , wherein adjusting the parameter includes determining an adjustment amount by comparing the linearity metrics in a lookup table of tuning parameters.

16. The method as recited in claim 11 , wherein adjusting the parameter includes determining an adjustment amount by inputting linearity metrics or historic changes in metrics into a tuning formula.

17. The method as recited in claim 11 , wherein adjusting the parameter includes adjusting the parameter dynamically during usage of the solid state disk.

18. The method as recited in claim 11 , wherein adjusting the parameter includes adjusting the parameter of one or more of: a log block write mechanism, a garbage collector and/or wear-leveling mechanism.

19. The method as recited in claim 11 , wherein adjusting the parameter includes adjusting the parameter of one or more of: a number of data blocks versus log blocks, a number of pages to prefetch, a block-based or page-based mode, a granularity of memory size and/or a type of flash memory access.

20. The method as recited in claim 11 , wherein determining whether a parameter needs to be adjusted includes evaluating a trend in differences in the linearity metric by counting a number of positive differences and a number of negative differences.

21. A method for tuning a solid state disk memory, comprising:

receiving access request information in a solid state disk controller;

storing the access request information in a translation table;

computing a linearity metric, using a regression technique, from the access request information in the translation table to obtain usage pattern data representing a usage trend of a solid state disk memory over two or more time intervals and by comparing the usage pattern data over the two or more time intervals;

determining whether a parameter needs to be tuned to provide increased memory lifetime by consulting a lookup table or formula;

adjusting the parameter in accordance with the metric to increase an overall lifetime of the solid state disk memory; and

rechecking whether adjustments are needed after an elapsed time interval.

22. The method as recited in claim 21 , wherein adjusting the parameter includes adjusting the parameter dynamically during usage of the solid state disk.

23. The method as recited in claim 21 , wherein adjusting the parameter includes adjusting the parameter of one or more of: a log block write mechanism, a garbage collector and/or wear-leveling mechanism.

24. The method as recited in claim 21 , wherein adjusting the parameter includes adjusting the parameter of one or more of: a number of data blocks versus log blocks, a number of pages to prefetch, a block-based or page-based mode, a granularity of memory size, and/or a type of memory access.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2012
From: EL MAGHRAOUI, KAOUTAR; FRANKE, HUBERTUS; KANDIRAJU, GOKUL B.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029217/0931 →
Continuity (1)
Related Publication 20140122861A1 · May 1, 2014