Mailinglist Archive: opensuse (2575 mails)
| < Previous | Next > |
Re: [opensuse] Multithreading?
- From: Wendell Nichols <wcn00@xxxxxxx>
- Date: Tue, 10 Feb 2009 13:47:30 -0700
- Message-id: <4991E7E2.90804@xxxxxxx>
Greg Freemyer wrote:
-almost all java apps more sophisticated than "hello world"
-all your various web and file browsers
-almost anything with a gui will use a MVC architecture where different
threads are responsible for different things
Lots of multithreading going on, but not always lots of GOOD
multithreading. Poorly written apps routinely synchronize threads badly
(ever have a gui hang and become unresponsive? almost certianly blocked
waiting for a shared resource).
make -j is an example of multiprocessing rather than multithreading as
make synchronizes among many different processes. In my experience it
doesn't always work well anyway.
Because linux is a multi processing/multithreaded system you can be sure
that for cpu's or cores, the more the better up to a limit. And that
limit is rising over time... no idea where it is now, but 20+ seems
likely.
wcn
--
To unsubscribe, e-mail: opensuse+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse+help@xxxxxxxxxxxx
On Tue, Feb 10, 2009 at 11:34 AM, Heinz Diehl <htd@xxxxxxxxxxxxxxxxx> wrote:Add to your list:
Hi,
just want to ask if there's a list what programs in opensuse 11.0/11.1 are
multithreaded, meaning "can use multiple cpu cores" . Example: "make -j".
Tried to find out by myself but wasn't successful. Can somebody point me to
a side or source of information where I can read more (if it exists)?
As you research this you need to understand "multithreaded" does not
equate to "can use multiple cpu cores".
Linux supports several threading models. I think only "Native POSIX
Linux Threading" can leverage multiple cpus.
OTOH, lots of user space apps utilize multiple processes without the
use of threading and thus they "can use multiple cpu cores".
The make command in your example I believe is an example of a app the
"can use multiple cpu cores", but is not multithreaded.
Apache is another.
In general linux uses lots of small apps doing specific things. That
is an ideal implementation that "can use multiple cpu cores".
Greg
-almost all java apps more sophisticated than "hello world"
-all your various web and file browsers
-almost anything with a gui will use a MVC architecture where different
threads are responsible for different things
Lots of multithreading going on, but not always lots of GOOD
multithreading. Poorly written apps routinely synchronize threads badly
(ever have a gui hang and become unresponsive? almost certianly blocked
waiting for a shared resource).
make -j is an example of multiprocessing rather than multithreading as
make synchronizes among many different processes. In my experience it
doesn't always work well anyway.
Because linux is a multi processing/multithreaded system you can be sure
that for cpu's or cores, the more the better up to a limit. And that
limit is rising over time... no idea where it is now, but 20+ seems
likely.
wcn
--
To unsubscribe, e-mail: opensuse+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse+help@xxxxxxxxxxxx
| < Previous | Next > |