Affinty Changer's are for CPU based rig's only. On a rig with mixed CPU/GPU2 Clients, you must isolate the clients to separate cores of the CPU. You can run as many as 4 GPU2 clients on a single core of a CPU and run SMP on the other core(s) to max out PPD. Affinity changer's will mix the cores and drop your GPU ppd substantially. Affinity changers are installed as a service and must me stopped in the services/start-up tab's.
Just to make sure I am understanding this right... I may be using the affinity changer terminology incorrectly. The affinity software that Kursah pointed us to has some sort of auto load leveling. But there is also affinity SW that just allows you to set an affinity for a program statically.
All of my rigs are running combination CPU (non-SMP) and GPU. I downloaded the "get and set" affinity changer based on Buck's suggestion and that works great. The GPU client seems to automatically pick core1 (on dual cores) and core3 (on quad cores). But then my CPU folding client would pick all cores. So what I did with the affinity program was to set the CPU folding client dedicated to a different core than the GPU (core 0 for my dual cores and core 1 for my quad core). My line of thinking is that the CPU folding client will not cut into the GPU folding requirement for it's core (which is what Buck is saying).
The reason I am not running the SMP versions of the CPU client is that I want some spare bandwidth available for everyday computing without disabling folding (3 of the computers are non-dedicated rigs). The one exception is my Linux rig which is dedicated to folding so I run the Linux SMP client on that.
The nice thing about my main quad core rig (in my way of thinking) is that I chew up one core for GPU, one core for CPU, and then still have 2 cores available for everyday (non-gaming use).
Well that's the way it works in my theory anyways. Should I be considering something different?