My goal is to understand the exact differences between SoEMT, SMT and "time-slice multi threading".

Thus far I already found information on SoEMT and SMT and it does not seem to hard to find more on google. However my problem is: Time-slice multithreading. The best I found - apart from a long winded book, was:

– Processor switches between software threads after a predefined time slice – Can minimize the effects of long lasting events – Still, some execution slots are wasted For Time-slice multithreading I found:

However, this doesn't really go into detail how this things are achieved, for what purpose, its pros, cons and implementations etc.

I would thus be quite happy, if someone knew a good resource, that read up further on that topic. Bonus, if it also compares SoEMT, SMT. As always thanks in advance.

  • $\begingroup$ Fine-grained MT is a type of time-slice multithreading where the time slice is one cycle. Software MT generally combines SoEMT (I/O interrupts, blocking system calls, et al.) and coarse-grained time-slice MT (timer interrupt). $\endgroup$
    – user4577
    Commented Sep 10, 2017 at 23:29

1 Answer 1


Time-slice multithreading is the convectional multithreading where CPU creates an illusion of executing more than once program at a time but the CPU can execute only one of these programs at a time. The OS maintains the illusion of concurrency by rapidly switching between running programs at a fixed interval, called a time slice. Time slice multithreading works similar to RoundRobin fashion.

For detailed understanding refer

  1. Definition (Convectional multithreading)
  2. Stackoverflow answer

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.