Well my experience is limited at best, but here is what I think I have learned:
XCPM is activated for modern processors, and can not be disabled. XCPM can set the processor frequency regardless of any bios setting: you can disable turbo and EIST and even c states, and XCPM will work. From the min to the max frequencies. At this stage you get an error on verbose boot informing you that cpu pm might be incomplete.
If you have a plugin type:1 for the first cpu in your cpu ssdt, xcpm will also load the frequency vectors, and is supposed to run even better. With this, the error disappears. Oh BTW ssdtprgen frequencies doesn't matter. If you remove from them, those p states are used anyway. I think xcpm gets the min/max frequencies from somewhere else, the bios, probably.
With these settings, my system is works okay, but stays at 1.2 Ghz most of the time and my perceived OS speed is slow.
There is also the matter of HWP (a.k.a. SpeedShift), or hardware controlled P states. My understanding is that this technology should enable faster speed changes as the os does not set p states, the cpu does, and does it really fast.
While HWP should not work with iMac17,1 (it is not activated by iMac17,1's cpu freq vectors), setting SpeedShift on/off in the bios does have effect on cpu freqs.
- If it is on, cpu goes to 1.2 Ghz, turbos properly to the max with any benchmark, benchmark speeds are fine. But OS feels slow. (After the first sleep, OS responses seem to speed up, but nowhere near good enough)
- If it is off, cpu hovers around 2-3 Ghz, thus feels faster, but under benchmarks, frequencies are all over the place for no reason, and results are bad.
Sadly, I have not found a way to:
- disable all CPU PM to see how my system would feel at max speed
- check if HWP is working
- activate HWP if it is not
So if you want the best benchmark results (or good performance under heavy load), try enabling SpeedShift.