Performance regressions with C'n'Q, C1E, SB750
after running a few tests I have come along some major performance regressions when using AMD's power saving options.
- MB: ASUS M4A79T Deluxe
- CPU: Phenom II X4 810
- Memory: 8GB DDR3
- SSD: Intel X25-E
- HD 4850
- Ubuntu 9.04, Kernel 2.6.30
Test tools were hdparm -t and ET:Quake Wares at max setting 1920*1200.
C'n'Q on, C1E on
System Idle: SSD 135 MB/s, ETQW 24 fps
System Full Load with prime: SSD 185 MB/s, ETQW 30 fps
C'n'Q on, C1E off
System Idle: SSD 150 - 170 MB/s, ETQW 26 fps
System Full Load with prime: 180 - 190 MB/s, ETQW 30 fps
C'n'Q off, C1E off
System Idle: SSD 200 - 210 MB/s, ETQW 36 fps
System Full Load with prime: 180 - 190 MB/s, ETQW 31 fps
System SSD performance drastically depends on power saving options and from the results it also looked like it depends on CPU load, so I have done a few other tests.
C'n'Q off, C1E off, 1000 Mhz fixed
System Idle: SSD 170 - 180 MB/s
C'n'Q off, C1E off, 1600 Mhz fixed
System Idle: SSD 200 - 210 MB/s
As the results show, the SSD maxed out at a CPU Clock of 1600 Mhz. It looks like the SB750 doesn't support SATA natively and offloads alot to the CPU.
What is wrong with AMD? It can't be that you have to turn off all the power saving options and keep the CPU under low load just to get normal performance for one SSD!
That is to be expected. It's the same with Intel. When you enable CnQ or speedstep, it takes *time* to change states. It isn't a lot of time, but that delay will reduce performance. It is for this reason I don't use those features. I set my clocks and voltages manually in the BIOS before booting based on what I am going to use the system for. This way I get the best of both worlds.
no, that way you get the worst of all worlds.
Originally Posted by Max Spain
Just set the governor.
The time taken to switch between power states is what Via minimized in the Nano. Can't comment on their chipsets though.
It is simple. You lose 10% performance while you save 50%+ in power consumption when idle. Idea behind power saving is to lose a little bit in performance while saving a lot power. If you don't want that then don't use power saving.
The kernel configuration docs ("conservative" frequency scaling governor) have this to say about AMD64 CPUs:
"If you have a desktop machine then you should really be considering the 'ondemand' governor instead, however if you are using a laptop, PDA or even an AMD64 based computer (due to the unacceptable step-by-step latency issues between the minimum and maximum frequency transitions in the CPU) you will probably want to use this governor."
So you are saying to use OnDemand governor if you are using a desktop, and Conservative for laptops?
Originally Posted by RealNC
My desktop is an AMD64 X2 and I use the OnDemand governor. My laptop uses an Intel Pentium M...and at the moment its using the OnDemand governor as well. Should the laptop use Conservative or the OnDemand? Right now I am not experiencing any obvious issues on either machine though
If you want to increase the responsiveness of frequency switching check this out.
Should tell you a value. In my case its 10900.
echo 10900 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
Your System will now respnse faster in regard to frequency switching.
Note: This may produce an overhead.
The governor is already set to ondemand.
Only Intel's advanced C-steps affect perfomance.
Speedstep's perfomance loss is around 1%.
The point those docs are trying to make is that "conservative" might be a better choice than "ondemand" and that AMD's freq scaling is much slower than speedstep (though it fails to mention on what chips it's actually slower; Athlon? Phenom? Phenom II?)
Originally Posted by Muad'Dib