5,664 views
4 votes
4 votes
Can a multithreaded solution using multiple user-level threads achieve
betterperformance on amultiprocessor system than on a single-processor
system?

2 Answers

Best answer
5 votes
5 votes

NO! NO! NO!

A multithreaded system comprising of multiple user level threads cannot make use of the different processors in a multiprocessor system simultaneously.

BECAUSE The operating system sees only a single process and will not schedule the different threads of the process on separate processors.

Consequently, there is NO performance benefit associated with executing multiple user-level threads on a multiprocessor system.

selected by
0 votes
0 votes
Yes.

Multithreading means actually some perfect kind of switching in which you won't even be able to notice that there are multiple threads running simultaneously (It seems but actually it doesn't happen). THe switching is that fast (like it take nanoseconds) the it seems like only process is currently running on processor.

But when there are multiple processors then there multiple threads can run simultaneously (exactly at the same time) so of course multiprocessor system is more efficient than single processor.

Related questions

0 votes
0 votes
3 answers
2
0 votes
0 votes
1 answer
4
akash.dinkar12 asked Mar 19, 2019
3,831 views
Using Amdahl’s Law, calculate the speedup gain of an application that has a 60 percent parallel component for (a) two processing cores and (b) four processing cores.