Analysis and simulation of parallel fork-join systems

Date of Completion

January 1998


Computer Science




In this work we present a new model and corresponding analyses, which include a new exact relationship and a new conditional upper bound of fork-join synchronization in parallel queues. This topic is a key issue in the partitioning and allocation of real-time programs to parallel pipeline multiprocessor systems.^ We consider a fork-join system that consists of K parallel processors, where each processor has its own buffer (queue) of sufficient size. Jobs that are unable to be executed, due to a busy processor, wait in the buffer until the processor is available. We consider that the input (arrival queue) is a First-Come-First-Service (FCFS) queue. Jobs arrive in a time-invariant, state-independent Poisson fashion with rate $\lambda$. Upon arrival, a job forks into K branches to the K queues. Each branch is a task set that occurs in sequence. A task is defined as the smallest processing entry that is dispatchable by an operating system. A job leaves the system when all its tasks complete their service. In other words, tasks corresponding to the same job are joined before departing the system.^ In our analysis of fork-join synchronization in parallel queues, we are interested in the mean job response time that we denote by $T\sb{K}$. We obtain a new and simple relationship for $T\sb{K}$, which shows its dependence on SYNC queue (join node) properties. Also, we obtain the exact value of the average length of the longest SYNC queue in a 3-queue fork-join system. We generate a new conditional upper bound on the mean response time for the system. We evaluate our model and upper bound by simulation and comparisons with other approximations, upper and lower bounds. The relative offset in the simulation for our exact relationship is less than 1%, which is very reasonable because an offset is always there to average any number of analysis samples as the average of infinity samples. Our upper bound can be much lower (e.g. 50% or more) than the latest upper bound published for certain situations. ^