![if !IE]> <![endif]>
Hardware versus Software Speculation Mechanisms
Dynamic runtime disambiguation of memory addresses is done using Tomasulo’s algorithm. This disambiguation allows us to move loads past stores at runtime.
Hardware-based speculation works better when control flow is unpredictable, and when hardware-based branch prediction is superior to software-based branch prediction done at compile time.
Hardware-based speculation maintains a completely precise exception model even for speculated instructions
Hardware-based speculation does not require compensation or bookkeeping code.
The ability to see further in the code is very poor in Hardware based speculation
Dynamic runtime disambiguation of memory addresses is difficult to do at compile time for integer programs that contain pointers
Hardware-based branch prediction is superior than software-based branch prediction done at compile time.
Software-based approaches have added special support to allow this as well.
Software-based speculation require compensation or Bookkeeping
Compiler-based approaches may benefit from the ability to see further in the code sequence, resulting in better code scheduling than a purely hardware-driven approach.
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.