While the use of 6 & 8 core processors increasily being used, I think it becomes more important to set the CPU affinity for single core applications. My idea is an rather different approach in setting the affinity. In most cases you have to set every process to the dedicated core(s). But would it not be simpler for the user, (guess not for the software designers) to make an dedicated core exclusive for this single core application, just by selecting that core only for this single core application. Now the rest of the processen can use all the cores, except the dedicated core.
So if an new process appears, like an virusscan, sheduled task or automatic update, it is blocked for that dedicated core only and does not affecting the dedicated core, and the single core application can run, without overflowing or stuttering.