ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

Multi-threaded software

(1/3) > >>

I've just upgraded to a multi-core processor (Intel Quad Core) for the first time.
Until now I haven't been concerned whether an application is multi-threaded or not.   Now all of a sudden I'd prefer multi-threaded applications if possible (most of the time my current applications only use one core, and my multi-threaded Java test programs just don't cut the mustard.  I mean how many times can you watch the Dining Philosophers problem being solved? ;). 
Anyway my question is, does anybody know of a list of multi-threaded applications I might use to take advantage of all my new processing power.
If not, we should start one!

There is a really good article over at CodingHorror.. It is a bit old, but still very relevant Quad Core Desktops and Diminishing Returns

I think f0dder will be a good person to comment on this -- but since a modern operating system like windows runs so many different processes at the same time -- you are going to benefit significantly from a multi-core cpu even with single-threaded applications because other processes can run on the other cores.

so that except for certain very processor intensive operations (video encoding, compressing/decompressing, heavy duty statistics), having a single application which is able to capitalize all the cores of your cpu simultaneously seems unnecessary to me.

but i'm not an expert, let's hear what the people who know about such things have to say.

You benefit greatly from going single->dualcore, but not so much from dual->quad. Not yet, anyway. It hasn't been my experience that the system on a whole feels smoother with a quadcore for daily use. But yet, it does mean you can run multiple intensive single-threaded applications more efficiently, and it helps with virtualization. Also, some games have started utilizing two cores fairly efficiently, so even while a quadcore might not help a game that much (yet), it gives you more breathing room to have other background stuff running.

Every now and then, I delete a bunch of albums from my 8gig flash based MP3 player, and need a fresh crop of MP3s for it. I archive my audio CDs in FLAC format, and then transcode to MP3 for the player... the quadcore goodness helps a lot here.

Also, when compiling larger projects, it's nice having multiple instances of cl.exe running - cuts down time.

And the upcoming games are supposed to be more efficient at utilizing more cores, at least companies like Valve have been putting a lot of effort into threading their code.

To clarify, I was thinking of CPU intensive software.
eg.  Graphics & video editors, format transcoders, maybe virus checkers and the like.
I presume most of the newer software (especially commercial software perhaps) in these categories is multi-threaded, but nowhere have a seen an actual list to confirm which ones are.
Short of it being documented I guess you could just check your CPU usage to see if multiple cores were being used when the software is running, but a list somewhere would still be handy!


[0] Message Index

[#] Next page

Go to full version