Question: One can uncover the chunk size with the following code. The basic idea is to perform reads from N patterns chosen at random, but always
-1.png)
-2.png)
Figure 6.27 Results from running the chunk size algorithm of Shear on a mock storage system.
-3.png)
If you run this code and plot the measured time as a function of c, then you will see that the measured time is lowest when the requestA and requestB reads fall on two different disks. Thus, the values of c with low times correspond to the chunk boundaries between disks of the RAID.
a. Figure 6.27 shows the results of running the chunk size algorithm on an unknown RAID system.
¢ What is the chunk size of this storage system?
¢ What do the measured times of 0.75 and 1.5 seconds correspond to in this storage system?
b. Draw the graph that would result from running this Shear code on a storage system with the following characteristics:
Number of requests: N = 1000
¢ Time for a random read on disk: 5 ms
¢ RAID level: RAID 0
¢ Number of disks: 8
¢ Chunk size: 12 KB
for (c = 0; c < pattern size; c += BLOCKSIZE) { for (1-0; i < N; i++) { requestA[i] request[i] (c-1 = random()*pattern size + c; = random()*pattern size + pattern size; 1.5 pa-- +. 1.0 0.5 0.0 16 32 48 64 Boundary onset assumed (KB) begin time -gettime) issue all requestA[N d requestB[N] to raw device in parallel; wait for requestA[N] and requestB[N] to complete; interval_time gettime() begin_time; printf("ChunkSize: %d Time: %d ", c, interval time); -
Step by Step Solution
3.32 Rating (161 Votes )
There are 3 Steps involved in it
a 8 KB We see the dips every 8 KB which corresponds t... View full answer
Get step-by-step solutions from verified subject matter experts
Document Format (1 attachment)
903-C-S-S-A-D (3250).docx
120 KBs Word File
