10-06-2017, 06:43 AM
Simultaneous multithreading
Often abbreviated as SMT, it is a technique for improving the overall efficiency of superscalar CPUs with hardware multithreading. The multiple independent threads of execution can make a better utilization of the resources provided by modern processor architectures with the help of simultaneous multithreading.
In fact , this concept is similar to the preemptive multitasking, but this has been implemented at the thread level of execution in modern superscalar processors. The two main implementations of multithreading are Simultaneous multithreading (SMT) and temporal multithreading. In the case of temporal multi threading, one thread of instructions can execute in any given pipeline stage at a time, whereas instructions from more than one thread can be executing in any given pipeline stage at a time in the case of simultaneous multithreading. The hardware modifications needed are mainly for:
fetching instructions from multiple threads in a cycle, and larger register file to hold data from multiple threads. the chip designers can decide on the number of concurrent threads that can be processed. As many as 8 threads per core has been implemented in some processor architectures. The increased conflict on shared resources occurs due to the simultaneous multithreading, as this is an efficiency solution.
Get more details here:
http://en.wikipediawiki/Simultaneous_multithreading
http://cs.princeton.edu/courses/archive/...ng/smt.pdf
http://d.umn.edu/ salu0005/smt.pdf
That should be sufficient information to create a seminar report.
Lots more information is available on the net. Google is your friend.