Browse Prior Art Database

Adaptive Cache Partitioning for Quality of Service

IP.com Disclosure Number: IPCOM000190201D
Original Publication Date: 2009-Nov-19
Included in the Prior Art Database: 2009-Nov-19
Document File: 2 page(s) / 25K

Publishing Venue

IBM

Abstract

This invention partitions the low priority cache in two parts: a) Shared Region, a part that shares disk with the high priority data; and b) Exclusive Region, a part that only has disks for low priority data. It improves throughput for high priority data, when needed, on the expense of exclusive region of the low priority data.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 2

Adaptive Cache Partitioning for Quality of Service

This invention provides a method to partition the cache so that high priority data can provide high response time and quality of service without impacting the system performance.

Customers need Quality of Service for certain parts of their data (high priority data) and good performance for rest of the data.

A known solution is to partition the cache such that high priority data always gets preference in cache. The problem with this approach is that the overall system performance can degrade and impact the performance of high priority data itself. For example, if the overall read hit ratio goes down because of favoring the high priority data then the disk drives will be much busier and the read miss penalty for high priority data will increase. So even though read hits for high priority data increase, the cost of read misses increase correspondingly.

This invention partitions the cache in such a way that high priority workload can be preferred in a way that it does not impact system performance and as a result does not hurt itself. Key elements of the invention are:

1. Partition the low priority data into two parts: a) Shared Region, a part that shares disk with the high priority data; and b) Exclusive Region, a part that only has disks for low priority data.
2. Prefer the high priority data, when needed, on the expense of exclusive region of the low priority data.
3. Improve the system performance where possible by looking at the read hit ratios from various cache partitions.

A storage controller can be divided into a number of classes. Each class has a set of LUNs or devices assigned to it. In this invention, three classes of service are used. This invention can be extended to any number of classes of service.

Class A:


Class A is the highest priority. The goal is to have the best response time for I/O to this class of devices. This class of devices preferably want to use a certain percentage of cache (percentA) and has a goal of a response time (respGoalA).

Class B:


Class B is a high priority. The goal is to have go...