A method of processing operations within a superscalar data processing apparatus having a plurality of execution threads, each execution thread being operable to process a sequence of operations including at least one memory access operation, the superscalar data processing apparatus comprising a plurality of execution pipelines operable to execute the operations at least two of said execution pipelines being memory access capable pipelines which are capable of executing said memory access operations, the method comprising the steps of:
- allocating each operation to one of said execution pipelines for execution by that execution pipeline;
- associating each memory access capable pipeline with only a subset of said plurality of execution threads for the purpose of executing memory access operations, said subset is less than all of said plurality of execution threads;
- and
- for each execution thread, allocating any memory access operations of an execution thread to an associated memory access capable pipeline.