Check out the new USENIX Web site.


Effect of Latency Threshold

Recall that $ \cal {L}$ is the desired latency value at which the array provides high throughput but small queuing delay. Since PARDA tries to operate close to $ \cal {L}$ , an administrator can control the overall latencies in a cluster, bounding IO times for latency-sensitive workloads such as OLTP. We investigated the effect of the threshold setting by running PARDA with different $ \cal {L}$ values. Six hosts access the array concurrently, each running a VM with a 16 GB disk performing 16 KB random reads with 32 outstanding IOs.

Figure 9: PARDA Adaptation. Six hosts each run a 16 KB random read workload, with equal $ \beta $ values and $ \cal {L}$ = 30 ms. VMs are stopped at $ t$ = 145 s, $ t$ = 220 s and $ t$ = 310 s, and window sizes adapt to reflect available capacity.

\epsfig{figure=plots/sec53-exp4-ws.ps,height=1.6in}

\epsfig{figure=plots/sec53-exp4-lat.ps,height=1.6in}

\epsfig{figure=plots/sec53-exp4-th.ps,height=1.6in}

(a) Window Size (b) Latency (ms) (c) Throughput (IOPS)


Table 4: Uncontrolled 16 KB random reads from six hosts.

Host IOPS Latency (ms) Host IOPS Latency (ms)
1 525 59 4 560 57
2 570 55 5 430 77
3 570 55 6 500 62


We first examine the throughput and latency observed in the uncontrolled case, presented in Table 4. In Figure 9, we enable the control algorithm with $ \cal {L}$ = 30 ms and equal shares, stopping one VM each at times $ t$ = 145 s, $ t$ = 220 s and $ t$ = 310 s. Comparing the results we can see the effect of the control algorithm on performance. Without PARDA, the system achieves a throughput of 3130 IOPS at an average latency of 60 ms. With $ \cal {L}$ = 30 ms, the system achieves a throughput of 3150 IOPS, while operating close to the latency threshold. Other experiments with different threshold values, such as those shown in ($ \cal {L}$ = 40 ms) and Figure 12 ($ \cal {L}$ = 25 ms), confirm that PARDA is effective at maintaining latencies near $ \cal {L}$ .

These results demonstrate that PARDA is able to control latencies by throttling IO from hosts. Note the different window sizes at which hosts operate for different values of $ \cal {L}$ . Figure 9(a) also highlights the adaptation of window sizes, as more capacity becomes available at the array when VMs are turned off at various points in the experiment. The ability to detect capacity changes through changes in latency is an important dynamic property of the system.


Ajay Gulati 2009-01-14