Patent ID: 8850153

Claim:
A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to: for each given period of time, determine average write throughput to a solid-state storage device over the given period of time; determine a first amount of time that average write throughput is high, wherein determining the first amount of time that average write throughput is high comprises incrementing a time register for each period of time average write throughput to the solid-state storage device over the given period of time is greater than a high throughput threshold; determine a second amount of time that average write throughput is low, wherein determining the second amount of time that average write throughput is low comprises decrementing the time register for each period of time average write throughput to the solid-state storage device over the given period of time is less than a low throughput threshold; and throttle write throughput to the solid-state storage device based on a comparison of the first amount of time and the second amount of time using the timer register.