3 ms·
Huh? Don't most ARM SoCs have multiple cores, where threads can be scheduled - effectively simultaneous multithreading?
by person_of_color 6y ago
Huh? Don't most ARM SoCs have multiple cores, where threads can be scheduled - effectively simultaneous multithreading?
- reitzensteinm 6y agoSMT means multiple threads executing concurrently on a single core. Multiple cores each executing a single thread is not the same thing.
- fulafel 6y agoSMT is a well established teem in computer architecture and means running more than one thread per core.
- throwaway_pdp09 6y agoSMT is multithreading within a single core. Timesharing a core at the hardware level. Having multiple threads by having multiple cores is a different thing.
- deleted 6y ago[deleted]
- notacoward 6y agoA "thread" in SMT is not the kind of OS-level or user-level thread most people are used to. Think of N threads as N register sets[1] that are swapped in and out on the same core, mostly to hide memory/cache latency. There's still only one set of functional units, and only one thread can be active on the core at a time - unlike separate cores which can all be active simultaneously. "Time-shared multithreading" or "multiplexed cores" might be more accurate, but SMT has been the established term at least since Tera. [1] It's actually more complicated than that, with register aliasing etc, but it's a decent conceptual model.