Sorry if this is offtopic for the more knowledgeable here...
On 14-Jul-09, at 7:50 PM, Robert Kubrick wrote:
> By setting processor affinity you can force execution of each
> process on a specific core, thus limiting context switching. I know
> affinity wasn't supported on MacOS last year, I don't know if the
> situation has changed.
> But running oversubscription without process affinity might cancel
> the benefit of SMT because the OS will try to allocate each process
> to whatever core becomes available, thus increasing context switching.
This is a little over my head (i.e. SMT?). However, to explain, the
jobs were a gridded simulation, with the grid divided into 8, or 16
'tiles' . Each core gets a tile and passes info the the adjacent
ones. I would be very surprised to find out that the tiles were
changing cores mid simulation. Why would the OS do something so silly?
The machines were certainly still running other processes to keep the
operating system going. If you watch the cpu monitor, the total would
occasionally drop from 100% to 98% as some operating system process
kicked in, but in general the jobs were pegged, leaving little
opportunity for one core to decide to take over what another core was
Thanks, and if I'm incorrect about how the jobs get distributed
between cores, I'd be more than happy to be corrected. As I said, my
knowledge of this stuff is pretty abstract.