Well, certainly that last part is very true indeed. As per design, the scheduler will try to keep as much of the threads of one process located on one processor. Why? because of cache coherency. Each processor usually has it's own L1 and L2 caches. When two processors each run a thread belonging to the same process, chances are high they both access the same memory space.
This means overhead at the memory controller level to ensure memory contents integrity. Different processes have different memory spaces, and as such will not interfere each other. So, the thread scheduler will try to retain all threads of one process on the same processor.
It doesn't matter if you happen to own a dual core processor with an internal unified L1/L2 cache. The Windows kerner does not know, nor differentiate between between one dual core with unified cache, one dual core with separate caches per core, a hybrid dual core (aka two processor dies in one pacakage) or two processors. It's all two separate processors as far as the task scheduler is concerned.
So we're back to square one. You will get benefits, measurable benefits, if you happen to run multiple processes in parallel to the game. Which is, in practice, always the case.