[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Current state of multi-core awareness



dsavage 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.

Attachment: pgphCc4z2YbUl.pgp
Description: PGP signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]