MLUG: Re: [MLUG - DISCUSSION] interesting note on quad core chips
Re: [MLUG - DISCUSSION] interesting note on quad core chips
Email address obfuscation in effect -- please click here to turn it off.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
On Sun, 2 Dec 2007, Stephen Montgomery-Smith wrote:

It can get quite tricky with certain algorithms to write MP code. Sometimes MP code will be slower than single-threaded code due to the thread syncing taking up an enormous amount of resources.

I write multithreaded programs. I tend to write CPU floating point intensive scientific programs (solving various partial differential equations). Like Jack, I can tell you that writing MP code is definitely not an easy chore.


I agree with both of you and I would add that there is another reason why it often isn't worth it. When we use supercomputers that have many CPUs, if we want to use two or more simultaneously, we have to wait longer for our job to start running in the batch queue. This waiting time is one of the most important factors determining total time to completion. So I'm pretty sure that if I came up with a way to parallelize some of our jobs, they would end up taking longer to run on our supercomputer sytems.

We do plenty of work where the total job can be divided into 22 independent pieces (22 autosomes [chromosomes other than X and Y]; example: linkage analyses). So I write scripts to submit 22 jobs to the queue and deal with it that way -- 22 single-threaded jobs. Genotype-phenotype ssociation analyses of many thousands of markers could be divided up into many independent jobs, and it would be nice to have a multi-threaded program that would deal with such a problem in a more automatic way, but the queuing problem would counter any benefit of multi-threading on our systems.

I might feel differently if I had a dedicated machine with hundreds of processors!

Mike

_______________________________________________
discussion mailing list
EMAIL:PROTECTED
http://mlug.missouri.edu/mailman/listinfo/discussion