Fork/join (F/J) requests arise in contexts such as parallel computing, query processing in parallel databases, and parallel disk access in RAID. F/J requests spawn K tasks that are sent to K parallel servers, and the completion of all K tasks marks the completion of an F/J request. The exact formula for the mean response time of K = 2-way F/J requests derived under Markovian assumptions (R F/J 2 ) served as the starting point for an approximate expression for R F/J K for 2 < K ≤ 32. When servers process independent requests in addition to F/J requests, the mean response time of F/J requests is better approximated by R max K , which is the maximum of the response times of tasks constituting F/J requests. R max K is easier to compute and serves as an upper bound to R F/J K . We discuss techniques to compute R max K and generally the maximum of K random variables denoting the processing times of the tasks of a parallel computation X max K . Graph models of computations such as Petri nets-a more general form of parallelism than F/J requests-are also discussed in this work. Jobs with precedence constraints may require multiple resources, which are represented by a queueing network model. We also discuss various queueing systems related to F/J queueing systems and outline their analysis.
ACM Reference Format:Alexander Thomasian. 2014. Analysis of fork-join and related queueing systems.