L'algoritmo di Tomasulo è un algoritmo sviluppato dal ricercatore dell'IBM Robert Tomasulo per permettere l'esecuzione fuori ordine delle istruzioni. La sua prima implementazione si è avuta nell'unità in virgola mobile del IBM 360/91.
Questo algoritmo si differenzia dallo scoreboarding per l'utilizzo della rinominazione dei registri; mentre lo scoreboarding risolve le Write-after-Write (WAW) e le Write-after-Read (WAR) con gli stalli, l'algoritmo di Tomasulo permette l'esecuzione di altre istruzioni; inoltre l'algoritmo di Tomasulo prevede un bus comune per fornire i valori calcolati a tutte le reservation station. L'algoritmo migliora l'esecuzione parallela delle istruzioni e fornisce prestazioni migliori dello scoreboarding.
Robert Tomasulo ha ricevuto il premio Eckert-Mauchly nel 1997 per il suo algoritmo.