Check out the new USENIX Web site. next up previous
Next: Trace Workload Up: Preemptibility Previous: Preemptibility

Random Workload

Figure 9 depicts the difference in the expected waiting time between non-preemptible IO and Semi-preemptible IO. In this experiment, IOs were serviced for data situated at random locations on the disk. The IOs were serviced using FCFS policy. We can see that the expected waiting time for non-preemptible IOs increases linearly with IO size due to increased data transfer time. However, the expected waiting time for Semi-preemptible IOs actually decreases with IO size, since the disk spends more time in data transfer, which is more preemptible.

Figure 9: Improvements in the expected waiting time (FCFS).
\begin{figure}\vspace{.2in}
\epsfxsize =200pt
\epsfysize =140pt
\centerline{\epsffile{fig-rand-wt.eps}}\end{figure}

Figure 10: Improvements in the expected waiting time (Elevator).
\begin{figure}\vspace{.2in}
\epsfxsize =200pt
\epsfysize =140pt
\centerline{\epsffile{fig-elev-wt.eps}}\end{figure}

Figure 10 depicts the improvements in the expected waiting time when the system uses an elevator-based scheduling policy. (The figure shows the results of randomly generated IO requests serviced in batches of $ 40$.) The results are better than those of FCFS access since the elevator scheduler reduces the seek component that is the least-preemptible.

Figures 11 and 12 show the effect of improving IO preemptibility on the achieved disk throughput when an FCFS scheduling policy is used. There is a noticeable but minor reduction in disk throughput using Semi-preemptible IO (less than $ 15\%$). This reduction is due to the overhead of seek-splitting and mis-prediction of seek and rotational delay. More details on the accuracy of rotational delay predictions can be found in [7]. Another point worth mentioning is that the reduction in disk throughput in Semi-preemptible IO is smaller for large IOs than for small IOs due to the reduced number of seeks and hence the smaller overhead.

Figure 11: Effect on achieved disk throughput (FCFS).
\begin{figure}\vspace{.2in}
\epsfxsize =200pt
\epsfysize =140pt
\centerline{\epsffile{fig-rand-thr.eps}}\end{figure}

Figure 12: Effect on achieved disk throughput (Elevator).
\begin{figure}\vspace{.2in}
\epsfxsize =200pt
\epsfysize =140pt
\centerline{\epsffile{fig-elev-thr.eps}}\end{figure}

Since disk commands are non-preemptible (even in Semi-preemptible IO), we can use the duration of disk commands to measure the expected waiting time. A smaller value implies a more preemptible system. Figure 13 shows the distribution of the durations of disk commands for both non-preemptible IO and Semi-preemptible IO (for exactly the same sequence of IO requests). In the case of non-preemptible IO (Figure 13 (a)), one IO request is serviced using a single disk command. Hence, the disk access can be preempted only when the current IO request is completed. The distribution is dense near the sum of the average seek time, rotational delay, and transfer time required to service an entire IO request. The distribution is wider when the IO requests are larger, because the duration of data transfer depends not only on the size of the IO request, but also on the throughput of the disk zone where the data resides.

In the case of Semi-preemptible IO, the distribution of the durations of disk commands does not directly depend on the IO request size, but on individual disk commands used to perform an IO request. (We plot the distribution for the Semi-preemptible IO case in logarithmic scale, so that the probability density of longer disk commands can be better visualized.) In Figure 13 (b), we see that for Semi-preemptible IO, the largest probability density is around the time required to transfer a single chunk of data. If the chunk includes the track or cylinder skew, the duration of the command will be slightly longer. (The two peaks immediately to the right of the highest peak, at approximately $ 2$ ms, have the same probability because the disk used in our experiments has two tracks per cylinder.) The part of the distribution between $ 3$ ms and $ 16$ ms in the figure is due to the combined effect of JIT-seek and seek-splitting on the seek and rotational delays. The probability for this range is small, approximately $ 0.168$, $ 0.056$, and $ 0.017$ for $ 50$ kB, $ 500$ kB, and $ 2,000$ kB IO requests, respectively.

Figure 13: Distribution of the disk command duration (FCFS). Smaller values imply a higher preemptibility.
\begin{figure}\begin{center}
\vspace{-.2in}
\begin{tabular}{l}
\epsfxsize =220pt...
...l-mono.eps}}
\end{tabular}\end{center}\vspace{-.2in}
\vspace{-.1in}
\end{figure}


next up previous
Next: Trace Workload Up: Preemptibility Previous: Preemptibility
Zoran Dimitrijevic 2003-01-06