TL;DR at the end + picture of multi GPU mining with no cpu bug.
So like many other people grinding their teeth on how their cpu pegs to 100% while mining, I had gotten this too on all my rigs. At first, it was -all- my miners, including single GPU setups. I had heard of 2.1 SDK not having a CPU bug but couldn't figure out how to get it to work with GUIMiner frontend as well as newer Phoenix miners, since it would always complain that no OpenCL devices are installed. I thought maybe it had something to do with how SDK 2.1 installs itself in C:\Program Files (x86)\ATI Stream. All AMD GPGPU applications from 2.4 onward install into C:\Windows\System32 and C:\Windows\SysWOW64. Maybe GUIMiner/Phoenix look in those directories instead to find OpenCL files? Not sure, but likely. In any case, SDK speeds vary for the 5xxx series in that 2.1 > 2.4 = 2.5 > 2.6. If you use all 5xxx series cards, you're in luck.
First instances where I saw CPU bug was gone started in 11.11 driver and 2.1/2.5 SDK (Untested 2.4 and 2.6, but likely no bug there too), but this only seemed to apply to single GPU setups. Also, how "intense" your miner ran seemed to cause the CPU bug to arise again, so I was stuck with 11.11 + 2.5 SDK + mid-high aggression on single GPU rigs (10 aggression on phoenix seemed to be the max. 11 would get 40% and 12 would get 80-100%). I ran this for a while and decided to suck up the CPU bug on my multi GPU rig.
Then I started playing around with 2.1 again, but forgot to uninstall 2.5 off my system once, and found that GUIMiner no longer complained about no OpenCL devices! I also had access to -2- OpenCL platforms, because they were installed in seperate locations. I found that 2.1 SDK had a small edge against 2.5 as far as speed goes while using the same phatk 2.2 kernel, gaining about 0.5% more mhash. But I also found 2.1 was -very- aggressive, causing the mouse to lag, and even causing TDR to trigger (read about TDR at http://msdn.microsoft.com/en-us/windows/hardware/gg487368
) at the aggression of 14 I normally mined with 2.5, so I bumped it down to 12 and found it no longer crashed the driver. I also found at even such high aggressions, there was an absolutely negligible amount of cpu time being consumed by Phoenix.exe!
I went about trying this for my multi-GPU miner using 11.11 driver + 2.1/2.5 SDK combo, but I had horrible problems with what could have been power issues, bad scheduling, I don't know. While 11.11 + 2.5 retained 99% GPU usage, it had a CPU bug. Once I tried out 2.1 though, GPU usage varied anywhere from 70% to 98%. I also had wildly fluctuating power draw at the wall, commonly going over what it normally drew with 2.5, and causing the entire pc to crash, so rolled back for a while, though now I had found a way to reduce processor frequency inside windows from 3.00 GHz to a meager 800MHz inside one of windows advanced power options.
Ran this for about a month before coming across https://bitcointalk.org/index.php?topic=56740
and someone mentioned their "golden combo" of 11.12 + 2.5. I tried it to no avail, but on a whim, I went about trying 2.1 again, and lo and behold, no cpu bug and 99% GPU activity!
TL;DR: If you're running 5xxx series cards, 2.1 SDK + 11.12 (or greater) driver seem to not exhibit any cpu bug across multi-GPU setups when running Windows 7. If you use GUIMiner, install another sdk alongside of 2.1 in order to get the frontend to recognize your devices (I use 2.5). If you need a better explanation, just post in thread. Here's a pic of my 4-GPU rig mining away with no CPU bug, and yes, those GPU temperatures are correct; the entire PC sits outside.
Specific OS/driver/miner/whatever settings: Windows 7 x64 Ultimate, Driver 11.12, SDK 2.1 + 2.5, GUIMiner frontend, Phoenix 1.7.4 using only the 2.1 SDK mining at Eligius using phatk 2.2 kernel with the Extra Flags box filled with "-k phatk2 VECTORS AGGRESSION=12" without quotes. Phatk 2.2 automatically assumes BFI_INT and maximum worksize supported by the device (256) so these are not supplied into the arguments. Hardware used is 2x5870 @ 1000core/330 memory, 1x5830 @ 1000/330 and 1x 5830 @ 1024/330. I ran a before and after between 2.5 and 2.1 (AGGRESSION=14 for 2.5, everything else is the same) and got these hash numbers. 2.1 SDK seems to have a 0.1% speed increase over 2.5 SDK
Before |||||| After
463.0 (1000core/5870) 462.7
463.4 (1000core/5870) 462.7
324.5 (1000core/5830) 324.8
330.9 (1025core/5830) 332.9
2.5 sdk 2.1 sdk
1581.4 mhash | 1583.1 mhash