32
Issues and Challenges in the Performance Analysis of Real Disk Arrays Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya Eachempati

Issues and Challenges in the Performance Analysis of Real Disk Arrays

  • Upload
    toni

  • View
    24

  • Download
    0

Embed Size (px)

DESCRIPTION

Issues and Challenges in the Performance Analysis of Real Disk Arrays. Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya Eachempati. RAID. Redundant Array of Inexpensive Disks Redundancy and Striping Capacity Speed (Parallelism) - PowerPoint PPT Presentation

Citation preview

Page 1: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Issues and Challenges in the Performance Analysis

of Real Disk ArraysElizabeth Varki, Arif Merchant,

Jianzhang Xu and Xiaozhou QiuPresented by:Soumya Eachempati

Page 2: Issues and Challenges in the Performance Analysis of Real Disk Arrays

RAID

• Redundant Array of Inexpensive Disks• Redundancy and Striping

– Capacity– Speed (Parallelism)– Availability of storage systems

• Multiple disks, large caches, array controllers - implement load-balancing, request coalescing, adaptive prefetching.

Page 3: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Why - Performance Modeling

• Storage systems are slow.• Any improvement in the performance would

escalate the system performance for I/O intensive applications.

• Metrics used:– Response time– Throughput– Queue length

Page 4: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Approaches

• Analytic - quick and dirty, less expensive

• Simulation - more accurate, lot of effort• So which method will you choose?• Authors develop analytic model that

includes array controller optimizations

Page 5: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Previous Work• Disk array performance• Efficient Caching algorithms• This paper models the parallelism of disk arrays

and effects of caching on performance.• Presents a Baseline model with known parameter

values.• Extraction of array controller optimizations using

the baseline model and workloads that isolate specific optimizations.

Page 6: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Disk Array Architecture

Page 7: Issues and Challenges in the Performance Analysis of Real Disk Arrays

RAID 1/0 configuration

Page 8: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Key Components

Page 9: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Some Assumptions• M jobs generate synchronous requests.• At-most one request from each stream at the

disk array.• Each job spends some time at the CPU

before submitting request to the disk array.• Read only and write only requests stream.• No queueing at the CPU/terminal.

Page 10: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Read Model

Page 11: Issues and Challenges in the Performance Analysis of Real Disk Arrays
Page 12: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Write Model

Page 13: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Response time• Array_response_time[m] =

cache_response_time[m] + disks_response_time[m]

• Array_throughput[m] = m / (CPU_delay + array_response_time[m])

• Cache_queue[m] = cache_response_time[m] * array_throughput[m] (Little’s law)

Page 14: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Response time• Arrival theorem states that the number of jobs

“seen” by a job upon arrival at a subsystem is equal to the mean queue length at the subsystem computed when the network has one less job.

• The response time of the arriving job is equal to the sum of the arriving job’s service time plus the time required to service the jobs seen ahead.

Page 15: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Baseline model parameters

• Disk Service time• Parallelism Overhead• Disk access probability• Cache parameters• Write model input parameters.

Page 16: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Disk Service time

• Very important to get an accurate estimate.

• Seek distance - disk scheduling policy and location of disk IO requests.

disk _ service_ time = seek _ time + rotational_ latency + transfer_ time

transfer_ time = diskIO_ sizedisk _ transfer_ rate

Mean _ rotational_ latency = constan t = 0.5* disk _ rotation _ time

Seek _ time =α + β seek _ distance →α + β full_ stroke _ distance (1+ disk _queue)

Page 17: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Disk positioning time

Degree of sequentiality has minimal effect for disk_queue > 3Disk positioning time linear function of disk_queue length for disk_queue < 3 for simplicity.

Page 18: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Cyclic dependancy

• Disk service time depends on disk queue length which again depends on disk service time.

• Assume disk queue length is an input parameter.

• If CPU_delay = 0 then disk_queue = M * disk_access_probability.

Page 19: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Parameters• Parallel_overhead = max_position_time -

disk_position_time• Disk_access_probability = cache_miss_probability *

num_diskIOs_per_request / stripe_width• Cache_hit = 1 - (read_ahead_miss *

re_reference_miss)• Cache_service_time = request_size /

cache_transfer_rate.• Once destage_threshold is reached, writes data to all

the disks at a time.– µ = stripe_width / 2 * disk_service_time

Page 20: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Array controller Optimizations

• Access coalescing policy• Redundancy based load balancing

policy• Adaptive prefetching• Simplest baseline model - small random

read requests with CPU_delay = 0.

Page 21: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Workload Characterization

Page 22: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Setup

• Trace of all IO activity at the device driver level.

• Trace contains– I/O submission and completion times.– Logical addresses– Sizes of requests

Page 23: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Optimizations• Disk I/O accesses to contiguous data on the

same disk coalesced into a single disk IO.• Example : 96KB striped across 3 disks with

stripe unit size = 16KB.• Redundancy load balancing

– Single request distributed to both the disk and its mirror. (transfer time reduction)

– 2 different requests to the disks and its mirrors.(queue length reduction)

Page 24: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Policy effects• Access coalescing and load balancing effect

number of disk IO requests per request.• Large request sizes > stripe_width *

stripe_unit_size• Num_diskIOs_per_request = stripe_width

(transfer time reduction) = stripe_width / 2 for disk_queue_length

reduction.

Page 25: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Access Coalescing• Random workloads - caching is eliminated.• Using large request sizes both the policies

can be evaluated > stripe_width / 2• Adaptive prefetching: Sequential read

requests - workload.• Explicit read-ahead is turned off.• Re-reference hit is zero.

Page 26: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Modeling Adaptive prefetching and load balancing

• Num_disIOs_per_request = stripe_width for request_size > stripe_width * stripe_unit_size

• Ceiling(requests_size / stripe_unit_size)

Page 27: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Load Balancing

• Workload consists of same-sized requests.

Page 28: Issues and Challenges in the Performance Analysis of Real Disk Arrays
Page 29: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Write-back caching• Size at-most 2 stripes.• Large requests - bypass the cache.

Page 30: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Validation• Model performs better for random than

sequential Ios• Random Reads - 3.7%• Random writes - 5.5%• Sequential reads - 8.8%• Sequential writes - 8.0%• Adaptive prefetching works well for disk queue

length < 4.• Disk writes and disk reads similar performance.

Page 31: Issues and Challenges in the Performance Analysis of Real Disk Arrays

Challenges• Disk parameters disk queue length affects the

caching policies as well.• Paucity of data.(Bus transfer rate 35% higher)• Performance as a function of disk array

controller optimizations, array caching policies, workload distributions along with disk service time, the stripe unit size and stripe width.

• Better Approximation of disk queue length.

Page 32: Issues and Challenges in the Performance Analysis of Real Disk Arrays

THANK YOU

Questions?