Comp Arch Out of Order Execution C++

Code dependencies are often the primary factor that stops code from concurrently executing more than it desires. Tomasulo scheduler is one such algorithm that looks at code dependency and distribute instructions to the appropriate functional unit in a out-of-order issue and out-of-order completion fashion.

The implementation of the simulator took significant effort and looks at the performane with respect to number of functional unit, fetch rate, branch predictor size and cache size.

Git Code and Report.