
Originally Posted by
OhNoes!
I get your point completely; that's why I said: The key to all the confusion is workload. Once you start running a very efficient code (like linpack) that fills the pipeline, you render SMT useless (even hurting performance in some cases as it probably steals resources that are needed for a more efficient execution of a thread). So we effectively go back to the fundamental reason behind SMT; which is what you already highlighted.
In this regard, CMT is not necessarily a direct competitor of SMT because it is more about raw processing power (while maximizing die space due to the design) than eliminating thread-level waste, which is the real strength of SMT. SMT is not a substitute for a real core.
Bookmarks