Okay I ran some tests, so now I have a better idea of what I'm talking about.
A brief introduction for those of you who are unfamiliar with what we're talking about: EQ was originally designed for single core systems. As dual core systems became more common, people found that EQ only used one of their two cores. This can cause problems when the game is confined to half of your resources, no doubt! Time passed and Sony patched the clients to better handle multiple cores and gave the players some degree of control over it via eqclient.ini with CPUAffinity settings. Done correctly, joyous performance can be had. Done incorrectly it can cause frustration and overload CPU cores.
The cores themselves are often split up into what are called 'Logical Processors'. Generally, there are 2 Logical Processors per core. This is what the marketing folk named as Hyperthreading. It's simple. Take a finite resource that had one line/queue, and give it two and alternate turns. Logical Processors are just a slot of compute time for a particular core, and the OS balances who gets the compute time. With 2 Logical Processors per core, your modern day quad core i7 will have 8 Logical Processors.
My testing showed some interesting results. CPUAffinity settings in eqclient.ini do, indeed, work. It allowed me to force eq clients to run on particular logical processors. This is confirmed working on my computer with Windows 8 and the Underfoot client. I was able to spread 18 clients out amongst all cores in one test and then confine to a specific half of the available cores in another. If I wanted to, I'm confident I could confine them all to one core with this process.
The results; however, are not what I was expecting.
Putting in CPUAffinity settings that rotated logical cores to spread the load evenly, well it did just that. But the overall CPU usage was higher than if I didn't bother with CPUAffinity settings at all. Let's take a look at some numbers:
Test 1: CPUAffinity defined for 18 clients rotating evenly amongst ALL logical processors (cores).

- cpusnapshot_rotating_affinity.png (81.71 KiB) Viewed 521 times
We can see 18 eqgame.exe processes. We can see the overall CPU usage for the system is around 19%. We can see that CPU 1-7 are, indeed, in use, and are fairly evenly loaded.
Test 2: CPUAffinity defined for 18 clients rotating evenly amongst HALF of the logical processors (cores).

- cpusnapshop_last4_affinity.png (87.53 KiB) Viewed 521 times
We can see 18 eqgame.exe processes. We can see the overall CPU usage for the system is around 22%. We can see that CPU 4-7 are, indeed, in use, while 3 and below are not. This is behaving exactly as I set it to with CPUAffinity in eqclient.ini.
Test 3: CPUAffinity undefined (no entries at all) with 18 clients running:

- cpusnapshop_no_affinity.png (84.09 KiB) Viewed 521 times
We can see 18 eqgame.exe processes. We can see the overall CPU usage for the system is down to 9-10%. We can see that CPU 1-7 are, indeed, in use, and are fairly evenly loaded.
Performance, as perceived by the human eye, is the same between tests 1 & 3. Test 2 was noticeably slower confined to half of the cores. This isn't a lot of data, but if I were to draw a conclusion, then I'd say CPUAffinity is best left undefined by the user. Let the client/OS handle it. If; however, you see cores going unused on your machine, then you could get your hands dirty with CPUAffinity and put those cores to work.