Next: Optimal System Design
Up: Service Time Model
Previous: Service Time Model
To compare our model with the performance of a prototypical
probe-based storage device we conducted experiments using the
Pantheon simulator from HP. We used a probe-based storage device
simulator that implements the architecture and layout described in
Section 3 [22], using a variant of the
unconstrained sled model [10,22]. We used
four workloads: 1992 cello (4% sequential, /news partition, most
requests smaller than 8KB, sector size is 256
bytes) [15], 1992 snake (23% sequential, /usr2
partition, most requests smaller than 8KB, sector size is 512 bytes)
[15], 1999 cello (disk 128, 30% sequential, large
requests where more than half are larger than 8KB, sector size is 1024
bytes) [22] and 1999 tpcd (disk 80, which accounted
for 12.5% of the requests). All traces recorded one week of
activity. In our simulations, we issue the requests at the original
times they occur in the traces, so queuing behavior in the original
workloads will not be as pronounced on the faster probe-based storage
devices.
All original traces were recorded by
HP Laboratories. The average request size and runlength for each
workload are shown in Table 2.
Table 2:
Average request size and runlength values for workloads used in our simulations.
Workload |
Average |
Runlength |
|
request size |
|
cello92 |
6.4 KB |
6.5 KB |
snake |
6.8 KB |
8.9 KB |
cello99 |
6.8 KB |
7.2 KB |
tpcd |
29.3 KB |
252.0 KB |
|
Figure 5:
Graphs of service time of the simulated snake, cello92 and cello99 workloads and values calculated with our probe-based storage model. The initial
configuration used had a 40m movement range in both and
, 320 active tips and 10 tips in per cluster. (a) varying the movement
range in ; (b) varying the movement range in ;
(c) varying the number of active tips; (d)
varying the number of tips in per cluster.
|
Figure 6:
Graphs of the service time of the simulated tpcd workload and values calculated using our probe-based storage model. The initial
configuration used had a 40m movement range in both and
, 320 active tips and 10 tips in per cluster. (a) varying
the movement
range in . (b) varying the movement range in .
(c) varying the number of active tips. (d)
varying the number of tips in per cluster.
|
We used as default physical parameter values from
Table 1 and varied configurable parameters one
at a time within the ranges shown in same table. These ranges were
selected because they represent reasonable variation around
default values for which behavior is well
understood [22].
Table 3:
Comparison of the
service time of several simulated workloads to our model as both a
percentage difference and a root mean squared difference, as we vary several parameters.
Varied |
Workload |
parameter |
cello99 |
cello92 |
snake |
tpcd |
|
mean error |
RMS error |
mean error |
RMS error |
mean error |
RMS error |
mean error |
RMS error |
|
2.2 % |
0.03 ms |
8.0 % |
0.10 ms |
7.8 % |
0.09 ms |
1.4 % |
0.02 ms |
|
0.8 % |
0.01 ms |
6.2 % |
0.07 ms |
8.3 % |
0.08 ms |
1.4 % |
0.02 ms |
|
1.1 % |
0.02 ms |
6.0 % |
0.07 ms |
8.4 % |
0.08 ms |
3.2 % |
0.03 ms |
|
1.6 % |
0.02 ms |
6.6 % |
0.07 ms |
6.7 % |
0.06 ms |
1.4 % |
0.02 ms |
|
Figures 5a-d show the results we obtained for
snake, cello92, and cello99 workloads, and
6a-d show our results for the tpcd
workloads. In Figure 5a, we see that for snake and
cello92, as increases,
the predicted service time deviates more from the
experimental values. This is
because the original disk from which the traces are taken is smaller
than the probe-storage devices we are mapping those requests to. Thus,
seeks occur over only a small fraction of the movement range in ,
and our model overestimates the seek time as the device capacity
increases. For cello99 and tpcd, traces taken from disks with higher
capacity, this effect is much smaller. In fact, the error decreases
in the case of the tpcd workload, as we can see from
Figure 6a.
In general, model error decreases as we increase movement range in
(Figure 5b). Because the sectors are ordered
vertically, seeks are distributed across the entire movement range
during the workload simulation. Thus the seek time predicted by our
model better approximates the experimentally obtained values. This
error becomes even smaller for higher movement ranges in , when
seeks in dominate those in . We can see from
Figure 5b that when the movement range in is
greater than 20m, service time for cello92, snake and cello99,
which have similar request sizes and runlengths, does not change
significantly. Increasing the movement range in increases the
average number of bytes that can be read before the mover must
turnaround, however, these workloads with small requests do not
benefit from this. In contrast, tpcd has a much larger request size
and runlength, hence its service time is minimized for greater values
of the movement range in , as shown in
Figure 6b.
Figures 5c and 6c confirm our
expectation that the number of tips in per cluster has a negligible effect
on performance at values greater than two.
Finally, Figures 5d and 6d show
that increasing the number of active tips increases the level of
parallelism inside the device, decreasing transfer time. The smaller
transfer time at higher numbers of active tips makes errors in seek
time more pronounced, causing the deviation between models and
simulation.
We show the model error for each configurable parameter in
Table 3. The percent error is calculated by
computing the average percentage difference of the model-predicted
values from the simulated values at each data point. The RMS
difference is the root-mean squared vertical difference between the
model predictions and the simulated workload value (in ms). The data
in Table 3 show that our model closely approximates
the simulated service time for all four workloads. Even though we
mapped workloads to devices with different capacities and assumed
random distribution of requests, our model was within 8% of the
simulated values.
Figure 7:
Performance of configuration minimizing service time when capacity and
request sizes are fixed. Above: Graph of the service time for
a range of values for the movement range in for the simulated trace
workloads. The movement range in
was adjusted at each point to keep the capacity at 2GB. Below: Experimentally
obtained and predicted service times for the four workloads, and optimal configurations.
|
|
|
Optimal |
Configuration |
cello99 |
cello92 |
tpcd |
snake |
(m) |
9 |
9 |
5 |
9 |
(m) |
22 |
22 |
40 |
22 |
|
2560 |
2560 |
2560 |
2560 |
Service time |
|
|
|
|
simulated (ms) |
0.52 |
0.51 |
0.26 |
0.38 |
predicted (ms) |
0.50 |
0.52 |
0.22 |
0.42 |
error |
3.8% |
1.9% |
15.4% |
13.5% |
Default |
Configuration |
cello99 |
cello92 |
tpcd |
snake |
Service time |
|
|
|
|
simulated (ms) |
0.98 |
0.91 |
1.31 |
0.79 |
predicted (ms) |
0.97 |
1.00 |
1.38 |
0.85 |
Difference |
|
|
|
|
from optimal |
|
|
|
|
simulated |
88% |
78% |
403% |
108% |
predicted |
94% |
92% |
527% |
102% |
|
|
|
Figure 8:
Performance of configuration minimizing service time for a fixed number
of active tips.
Above: Graph of the service time for a range of values for the movement range
in for the
simulated trace workloads. Below: Experimentally obtained and predicted
service times for the four workloads and optimal configurations.
|
|
|
Optimal |
Configuration |
cello99 |
cello92 |
tpcd |
snake |
(m) |
5 |
5 |
5 |
5 |
(m) |
29 |
27 |
80 |
32 |
|
320 |
320 |
320 |
320 |
Service time |
|
|
|
|
simulated (ms) |
0.80 |
0.83 |
1.08 |
0.70 |
predicted (ms) |
0.77 |
0.78 |
1.06 |
0.69 |
error |
3.8% |
6.0% |
1.9% |
1.4% |
Default |
Configuration |
cello99 |
cello92 |
tpcd |
snake |
Service time |
|
|
|
|
simulated (ms) |
0.98 |
0.91 |
1.31 |
0.79 |
predicted (ms) |
0.97 |
1.00 |
1.38 |
0.85 |
Difference |
|
|
|
|
from optimal |
|
|
|
|
simulated |
23% |
9.6% |
21.3% |
13% |
predicted |
26% |
28.2% |
30.2% |
23% |
|
|
|
Next: Optimal System Design
Up: Service Time Model
Previous: Service Time Model
Ivan Dramaliev
2003-01-06