I've seen (am living with) similar problems with Java applications. I think that there are issues where children of some java threads are implicitly bound to the same processor as their parent, probably due to the way resources and objects are passed to the child processes.

This is one of the things that makes multi-threaded and/or parallel proccessing harder. C.f., Pfister

--Nathan