Current state of multi-core awareness

Sam Varshavchik mrsam at courier-mta.com
Thu Dec 4 23:25:33 UTC 2008


dsavage at peaknet.net writes:

> Building up F10 on my new quad-core uber-laptop is becoming a painful
> exercise in single-threadedness, at least as far as Package Manager is
> concerned. PM may be graphical and intuitive, but it's obviously not
> designed to use more than one core. When it's checking dependencies or
> installing packages, one core is solidly pegged at 100% while the other
> three cores are idling.
> 
> Of the thousands of 64-bit F10 applications/tools/utilities, I wonder how
> many are aware of and can scale across multiple cores.

It's not a matter of "awareness". You cannot just take an arbitrary 
algorithm, and flip a magic switch to have it crunched by multiple CPUs.

Writing code to run on multiple CPUs is very different than writing 
single-threaded code. The logic is completely different. Rarely do you have 
an application where you can set one CPU to do X, another CPU to do Y, and 
have them go on their merry ways. Very few tasks can be accomplished that 
way. Rather, you will find that many times a multi-threaded application 
needs to have all of its execution threads coordinate their work between 
themselves and "talk" to each other. This introduces additional 
complications, and plenty of opportunities for hard-to-debug race conditions 
that will consume inordinate amounts of time to debug and fix.

That's why most applications are single threaded, so the greatest benefit of 
multiple CPUs is to let you run multiple applications at the same time 
efficiently.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20081204/887e9669/attachment-0001.sig>


More information about the fedora-list mailing list