Announcement

Collapse
No announcement yet.

Performance regressions with C'n'Q, C1E, SB750

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Performance regressions with C'n'Q, C1E, SB750

    Hello,

    after running a few tests I have come along some major performance regressions when using AMD's power saving options.

    My System:
    • 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.

    Results

    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!

  • #2
    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.

    Comment


    • #3
      The time taken to switch between power states is what Via minimized in the Nano. Can't comment on their chipsets though.

      Comment


      • #4
        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.

        Comment


        • #5
          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."

          Comment


          • #6
            The governor is already set to ondemand.
            Only Intel's advanced C-steps affect perfomance.

            Speedstep's perfomance loss is around 1%.

            Comment


            • #7
              Originally posted by Muad'Dib View Post
              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?)

              Comment


              • #8
                With Athlon 64 and X2 I have never noticed similar performance issues.

                The difference in benchmarks were always sub 10%.

                Comment


                • #9
                  Hello,

                  I have used "conservative" for a while and it really affected performance.

                  C'n'Q on, C1E off

                  System Idle: SSD 150 - 170 MB/s, ETQW 33 fps
                  System Full Load with prime: 180 - 190 MB/s, ETQW 31 fps

                  It can't be that a system doesnt' meet its specifications.

                  Even my old rig could handle a higher Disk-Throughput without being that depended on the cpu performance.

                  Comment


                  • #10
                    ATI 9.9 drivers improved a bit:

                    ---- Render ----
                    Renderer: ATI R600 1024Mb
                    OpenGL vendor: ATI Technologies Inc.
                    OpenGL renderer: ATI Radeon HD 4870 X2
                    OpenGL version: 2.1.8918

                    Unigine_Sanctuary-2.1
                    Benchmark finished
                    Time: 179.766
                    Frames: 8052
                    FPS: 44.7916
                    Scores: 1899.16

                    Unigine_Tropics-1.1
                    Benchmark finished
                    Time: 201.78
                    Frames: 7412
                    FPS: 36.7331
                    Scores: 925.306



                    ATI 9.2 drivers:
                    ---- Render ----
                    Renderer: ATI R600 1024Mb
                    OpenGL vendor: ATI Technologies Inc.
                    OpenGL renderer: ATI Radeon HD 4870 X2
                    OpenGL version: 2.1.8494 Release

                    Unigine_Sanctuary-2.1
                    Benchmark finished
                    Time: 179.888
                    Frames: 5782
                    FPS: 32.1422
                    Scores: 1362.83

                    Unigine_Tropics-1.1
                    Benchmark finished
                    Time: 201.928
                    Frames: 4025
                    FPS: 19.9328
                    Scores: 502.108

                    Comment


                    • #11
                      @cruncher:

                      The fglrx driver doesn't affect the performance regressions I have noticed.

                      Comment


                      • #12
                        Originally posted by RealNC View Post
                        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?

                        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

                        Comment


                        • #13
                          If you want to increase the responsiveness of frequency switching check this out.

                          cat /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min

                          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.

                          Comment


                          • #14
                            no need to deactivate anything in the bios (except C1E, this one really, really hurts).

                            If you need performance:
                            cpufreq-set -g performance
                            if you don't need max performance:
                            cpufrq-set -g ondemand
                            if you want to save power but need the box running:
                            cpufreq-set -g powersave

                            it is really that simple.

                            Oh, with PhenomII you need to do that for all cores:
                            cpufreq-set -c3 -g performance
                            cpufreq-set -c2 -g performance
                            cpufreq-set -c1 -g performance
                            cpufreq-set -c0 -g performance

                            don't bother with bios.

                            Comment


                            • #15
                              Originally posted by Max Spain View Post
                              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.

                              Just set the governor.

                              Comment

                              Working...
                              X