Back to Lecture Thumbnails
ggomezm
kayvonf
@ggomezm -- good question, but you are talking about hardware implementation details, not software ones. The hardware logic for determining which hardware thread to run next needs to be designed to ensure fairness among the threads.
ghostcow
The slide here mentions that execution of hardware threads is interleaved in time. Does this imply temporal multi-threading or simultaneous multi-threading, or could it imply both? My intuition here is that it could imply both: while both SMT and TMT interleave threads in time, SMT can switch every cycle while TMT can only switch on blocks.
Please log in to leave a comment.
Copyright 2021 Stanford University
For a multi-threaded core since the context switching is happening on hardware, how is the software synchronized so that the scheduler ensures that no thread is getting starved or getting too much run time?