core 2 duo in windows xp

Associate
Joined
18 Oct 2002
Posts
708
Location
milton keynes
have a c2d 7200 running a mathmatics modeling program but only uses 1 core. when running the program twice it will use each core 100%
is there a way of forcing both cores to work on the one program?

thanks
 
Relentless said:
You might be able to set the cpu affinity to the application process.

Right click on the app process in task manager and choose affinity.
And that would choose which *one* core to operate on, surely? :confused:

What you're suggesting can't be done unless the program is written to be multi-threaded to deliberately take advantage of multiple processors. Nothing else can do it on its behalf.
 
I've never really understood this, why can't the OS take advantage of two cores in a "crude" way?

Like just run the program over both cores, meaning that as it calls for instructions to be carried out, the OS feeds them into both cores rather than just one?

Wouldn't that improve speed?

I know it's not possible, but I can't understand why.
 
Because CORE1 may be processing a conditional jump which may mean the MATH computation being carried out in CORE2 is redundant or that CORE2 is computing a subsequent conditional jump that should have occurred after the CONDITIONAL jump that core1 is processing simultaneously - and may break the algorithm if it wasn't designed for parallel processing.

The OS would then end up spending more computational power dealing with the above exceptions (and others like it) then would be gained by distributing the code between the CORES in the first place. Or the performance gain is negligible compared to the amount of effort to achieve it by code in the OS.
 
Last edited:
Back
Top Bottom