Getting all 4 cores firing-How?

Started by Bandy, August 03, 2010, 12:43:35 PM

Previous topic - Next topic

Bandy

I will try to be brief, but likely will not succeed.

I am running a recent flight simulator with multi-core threading (quad core recommended), very advanced physics, very system intensive.  I have a quad core system.  My first attempts to run were miserable, the sim was like a slide show with seconds long stutters that were more like hangs.

I disabled Process Lasso because I thought 'gaming mode' might be forcing the sim to use a single core.  I restarted the sim and it was still a slide show, but I verified with Task Manager that a single core was indeed only used (no screen shot). 

Figured PL may still be cached so I rebooted and restarted the sim and this time it was much better, and Task Manager showed that 2 cores were now being used without PL, see below.  But still not all four cores, so there may be another issue (a dog with ticks AND fleas).

I scanned the PL user manual this morning on the train into work (so perhaps not a thorough re-read), but can only see where CPU affinity can be set on running processes, and nothing about how many cores gaming mode allows.

How can I set affinity for the simulator to all 4 cores since PL enters 'gaming mode' (and single core assignment by the anecdotal evidence?) when it is initialized???

Thank you for any help!






Jeremy Collake

Gaming mode doesn't force any CPU affinity changes, so it shouldn't have caused any troubles. Check the CPU affinity of the process and make sure it is set to use all 4 cores. If it is, then it may be the particular way the application is threaded. In this case, there is nothing that can be done. The application simply isn't making full use of all cores, which is typical even of multi-threaded applications.

If, for some reason, the CPU affinity of that process is set to not use all four cores, then you can set default CPU affinities with Process Lasso, so that the application will always start using all 4 cores. This can be done by right-clicking the desired process in Process Lasso and selecting 'Default CPU affinity'. If you find the application for some reason changes its own CPU affinity, then turn on Forced mode in the Options menu after setting its default CPU affinity to 0,1,2,3 (all cores). Of course, if the application is doing that, then it may be doing it for a reason.

Keep in mind that applications always start with a CPU affinity of 'all cores', so setting a default CPU affinity should not be necessary. I mention it only to inform that option exists.

If this is an Intel processor with hyper-threading then you really only have 2 physical cores, the other 2 are faked. That could explain the strange allocation of CPU cycles, though I'd not suspect the graphs to look like they do.. though it really depends on how the application is written.

Unless you set rules to change that process's CPU affinity, and any changes would be indicated in the log, I don't think Process Lasso had anything to do with how the CPUs were allocated.
Software Engineer. Bitsum LLC.

Bandy

Thanks for reply Jeremy,

Since I posted as mentioned I disabled PL and got the sim running on all 4 cores through the exe preferences. 
FYI I do have 2 x 2.66 GHx Xeon processors, so 4 cores total.  Why it ran on two when I posted is still a mystery.
There is a lot that Win7 does that cannot be explained.

Next step will be to follow your advice and get it running well with PL.

Have a great weekend!

Jeremy Collake

Another user had posted a problem similar to yours. I tracked it down to a rule he had on 'explorer.exe'. Since this process launches other processes, new processes often inherit its attributes (CPU affinity or priority). It may or may not pertain to you. In v3.99.10 (unreleased) I've added special warnings about this system process, amongst others.
Software Engineer. Bitsum LLC.