Description:

  • Hardware multithreading to improve utilization
  • Multiplexing multiple threads on single CPU
  • Each thread can be divided to do 1 function in parallel or divide a large loop to 2 and process in parallel,…

Types of multithreading

  • Instruction Level Parallelism, No multi-thread
  • Coarse-grain MT: has preferred thread and run work of another thread if free
  • Fine-grain MT: (round robin between threads): run work of 1 thread in 1 cycle
  • Simultaneous MT: Hyperthreading but more overhead for switching and solving hazard