Alex
Alex

Reputation: 13116

What is the difference between the Temporal multithreading and Super-threading?

There are two terms:

Is the main difference between TM and ST, that Temporal multithreading (fine-grained) uses C-slowing and switches between threads of execution on every cycle, but Super-threading switches between threads not every cycle and only when processor's functional units are left idle while executing instructions from one thread due to long-latency events?

What is the difference between the Temporal multithreading (fine-grained) and Super-threading?

Upvotes: 5

Views: 2788

Answers (1)

aminfar
aminfar

Reputation: 2365

Temporal multi-threading could be in form of fine-grain or coarse-grain multi-threading. Fine-grain multithreading switches contexts at fixed fine-grain interval (e.g. every cycle). Coarse-grain multithreading switches contexts on long-latency events (e.g. LLC cache misses).

Simultaneous multithreading, on the other hand, does not have any notion of thread switching. Multiple threads can run concurrently.

A picture is worth a thousand words. Take a look at slides 5 to 7 here. It has pictures for all 3 methods and compares them nicely.

As other people have said, super-threading is not a common term and it seems similar to coarse-grain TM to me.

Upvotes: 2

Related Questions