Influence of data clustering on in-order multi-core processing systems

In multi-core in-order processing systems, only one core can be utilised when the instruction at the head of the instruction queue produces data input for the next instruction in the queue. Although in-order processing has been studied in the past, the influence of data clustering, i.e. the extent to which subsequent instructions rely on each other's data, has been largely overlooked. Therefore a queueing model is developed and closed-form formulae are provided for the stability condition and the average time before instructions are executed. These expressions clearly reflect that data clustering can have a devastating impact.