Approximate analyses for fork/join synchronization in RAID5
Abstract
Approximation techniques are developed to evaluate the performance of K-way symmetric fork-join synchronization delays with Poisson arrivals and general service times at K M/G/I queues. We first consider the case when there are no interfering requests at the queues and propose an empirical equation for mean fork-join response time, whose parameters for a given service time distribution are obtained through surface-fitting to simulation results. We next consider the more realistic case when fork-join requests share the servers with local requests. Simulation results in this case show that when fork-join requests constitute a small fraction of server utilization, a good approximation (and an upper bound) to the fork-join response time is obtained by treating the components of fork-join response time as independent. This is because the queue-lengths encountered by fork-join requests tend to be independent due to the variability of queue lengths introduced by local requests. Instances of this computation, where the response time distribution at individual queues is expressible in the form of exponential functions, e.g. Erlang, hyperexponential, or Coxian, can be carried out efficiently. We describe how this analysis can be applied to evaluate the performance of disk arrays operating in degraded mode, which was the motivation for undertaking this study. A read intended for the failed disk in this mode requires accesses to all surviving disks to recreate the lost data, i.e. a fork-join request with interfering local requests.