Patent ID: 8868798

Claim:
A method for determining whether to move data between devices comprising: determining a first cost metric for a first device and a second device, said first cost metric being a sum of a first mathematical product and a second mathematical product, said first mathematical product being a result of a first response time for said first device multiplied by a first processing rate for said first device indicating a number of I/O operations processed per unit of time, said second mathematical product being a result of a second response time for said second device multiplied by a second processing rate for said second device indicating a number of I/O operations processed per unit of time, wherein said first response time and said second response time are modeled using one or more performance curves providing modeled response times for corresponding I/O operation processing rates; selecting at least one portion of data for a hypothetical movement between said first device and said second device; determining a second cost metric for the first device and the second device based on hypothetically moving said at least one portion of data between said first device and said second device, wherein hypothetically moving said at least one data portion between said first device and said second device models relocating said at least one data portion from one of said first device and said second device to another of said first device and said second device without issuing any read or write commands to any of the first device and the second device, said second cost metric being a sum of a third mathematical product and a fourth mathematical product, said third mathematical product being a result of a third response time for said first device multiplied by a third processing rate for said first device indicating a number of I/O operations processed per unit of time, said fourth mathematical product being a result of a fourth response time for said second device multiplied by a fourth processing rate for said second device indicating a number of I/O operations processed per unit of time, wherein said third response time and said fourth response time are modeled using said one or more performance curves providing modeled response times for corresponding I/O operation processing rates, wherein said one or more performance curves are previously determined prior to said determining said first cost metric and prior to determining said second cost metric and include one or more tables of stored data, each of said first response time, said second response time, said third response time, and said fourth response time being determined in accordance with at least one response time obtained from at least one of the one or more tables; and determining, using said first cost metric and said second cost metric, whether to move said at least one portion of data.