1. A method of scheduling units of work for execution on a computer system including a data cache or data cache hierarchy, the method comprising the steps of: buffering a plurality of transactions on a data structure; scheduling a plurality of said transactions on said data structures in a loop; issuing prefetch instructions within the body of said loop for the data required to process said transactions.