Announcement

Collapse
No announcement yet.

Radeon X.Org 7.4.0 Driver Brings More Tiling, R300/R500 GLAMOR

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

  • Radeon X.Org 7.4.0 Driver Brings More Tiling, R300/R500 GLAMOR

    Phoronix: Radeon X.Org 7.4.0 Driver Brings More Tiling, R300/R500 GLAMOR

    A stable update to the xf86-video-ati "Radeon" X.Org driver was released on Wednesday...

    http://www.phoronix.com/vr.php?view=MTczMDA

  • #2
    Does R600 have tiling enabled by default?

    Comment


    • #3
      Originally posted by Dukenukemx View Post
      Does R600 have tiling enabled by default?
      http://www.phoronix.com/scan.php?pag...tem&px=MTIyMDA

      Comment


      • #4
        AFAIR R300/R500 has a dedicated 2D engine. Won't the switch to Glamor slow down things?

        Comment


        • #5
          I would request some benchmarks on this.

          Comment


          • #6
            Originally posted by Mat2 View Post
            AFAIR R300/R500 has a dedicated 2D engine. Won't the switch to Glamor slow down things?
            I can't be sure that glamor which is now part of xserver 1.16 remain fully compatibile with r300/r500 . Support for r300/r500 is added for glamor lib, but as i see there are raised requirements now for xserver glamor when compared with glamor lib (i don't think r300 works correctly even with glamor lib). So someone need to test is that even work in xserver 1.16 for these chips : rolleyes:

            Comment


            • #7
              glamor is not enabled by default for any asics other than SI and newer. The changes mentioned for r3xx-r5xx just allow you to force glamor on via xorg.conf option for users that want to play with it.

              Comment


              • #8
                Originally posted by Mat2 View Post
                AFAIR R300/R500 has a dedicated 2D engine. Won't the switch to Glamor slow down things?
                Doesn't radeon default to EXA (running on the 3D engine) for 3xx-5xx these days anyways ?

                My recollection was that XAA used the 2D engine quite a bit but EXA did not...

                Comment


                • #9
                  Originally posted by bridgman View Post
                  My recollection was that XAA used the 2D engine quite a bit but EXA did not...
                  XAA was more accelerated then EXA and fine these days but was not composition friendly, so we get EXA for replacement which is composite friendly but with more non accelerated paths (fallbacks) .

                  Yep i remember XAA being faster in gtkperf then EXA .

                  Comment


                  • #10
                    It's not that the 2D engine is faster or that XAA or EXA accelerates more stuff. 2D and 3D engines have different capabilities. 2D engines can can basically do 3 things:
                    1. blit (move rectangles from one place to another)
                    2. fill (draw a filled rectangle)
                    3. lines

                    2D engines can't do coordinate transforms (scaling or rotation), alpha-blending, etc. so those operations require the 3D engine.

                    Core X and render were deisgned prior to GPU acceleration so a lot of ops map really poorly to modern hardware. Even today, pure software rendering is still faster than hw in many cases.

                    XAA only attempted to accelerate core X rendering. Additionally offscreen image support broken probably 6 or 7 years ago, so XAA only accelerated on screen images which means that for the most part, XAA almost always uses software rendering. Additionally, XAA was generally only exposed on older asics that had limited 3D engines, no support for tiled buffers, etc. Software fallbacks were relatively cheap on those cards for onscreen stuff and all offscreen buffers were rendered with software to begin with.

                    EXA took the most commonly used core X operations (blits and fills) and added limited support for also accelerating render (coordinate transforms, alpha blending, etc.).

                    For EXA, we use the 2D engine for blits and fills if the hw has it. For everything else, we use the 3D engine.

                    glamor accelerates core X and render using OpenGL.

                    Comment


                    • #11
                      Originally posted by Mat2 View Post
                      AFAIR R300/R500 has a dedicated 2D engine. Won't the switch to Glamor slow down things?
                      My hunch is that this is preparations for XWayland 2D acceleration for R300/R500. That will most likely run on top of Glamor.

                      Comment


                      • #12
                        Originally posted by agd5f View Post
                        It's not that the 2D engine is faster or that XAA or EXA accelerates more stuff. 2D and 3D engines have different capabilities. 2D engines can can basically do 3 things:
                        1. blit (move rectangles from one place to another)
                        2. fill (draw a filled rectangle)
                        3. lines

                        2D engines can't do coordinate transforms (scaling or rotation), alpha-blending, etc. so those operations require the 3D engine.

                        Core X and render were deisgned prior to GPU acceleration so a lot of ops map really poorly to modern hardware. Even today, pure software rendering is still faster than hw in many cases.

                        XAA only attempted to accelerate core X rendering. Additionally offscreen image support broken probably 6 or 7 years ago, so XAA only accelerated on screen images which means that for the most part, XAA almost always uses software rendering. Additionally, XAA was generally only exposed on older asics that had limited 3D engines, no support for tiled buffers, etc. Software fallbacks were relatively cheap on those cards for onscreen stuff and all offscreen buffers were rendered with software to begin with.

                        EXA took the most commonly used core X operations (blits and fills) and added limited support for also accelerating render (coordinate transforms, alpha blending, etc.).

                        For EXA, we use the 2D engine for blits and fills if the hw has it. For everything else, we use the 3D engine.

                        glamor accelerates core X and render using OpenGL.
                        That is developer perspective and how (modern) hardware by the time evolve included, but user (tipicaly with only certain oldish chip) perspective says something like this:

                        EXA was introduced as a stopgap measure, to provide better integration with XRender than XAA did, improving the X.Org Server 2D performance. In practice, while this proved quite advantageous in some respects, it also exhibited a number of corner cases and regressions.
                        http://en.wikipedia.org/wiki/EXA

                        Don't know who write those WP article, but if i had to do that i will write nearly the same . Because i rememeber me reading and trying early EXA in comparation with xfree86 i was use at that time on i think Debian Sarge or something . It was quite of a (negative) difference when compared with that, basically that was being to me "Troltech's developer did it with QT3 in mind" i expected that of course and was got that corner cases being gtk2 slow, fltk slow, etc .

                        That was 9 years ago, but i clearly remember gtkperf was much faster than EXA on that very old r200 XAA, those results i had was actually being faster then i having today on modern hardware with xserver glamor (and that is considered tad fast by today standards or how glamor behave earlier) .
                        Last edited by dungeon; 06-26-2014, 09:06 PM.

                        Comment


                        • #13
                          glamor accelerates core X and render using OpenGL.
                          Glamor is fine now (at least i can say that running it on kabini)... Not sure what will be next big thing in that area () maybe... accel using Mantle .

                          Comment


                          • #14
                            Originally posted by dungeon View Post
                            That was 9 years ago, but i clearly remember gtkperf was much faster than EXA on that very old r200 XAA, those results i had was actually being faster then i having today on modern hardware with xserver glamor (and that is considered tad fast by today standards or how glamor behave earlier) .
                            Try comparing any X acceleration to software rendering. XAA is basically software rendering.

                            Comment


                            • #15
                              Originally posted by agd5f View Post
                              Try comparing any X acceleration to software rendering. XAA is basically software rendering.
                              I would like to that but have not capable hardware for testing XAA, i even can't test EXA anyimore . But i believe you that it was mostly software accel if you remember the was the case in XFree86 r200... but it does not matter much what technology is used or not, people essentialy remember just "is it fast or slow" ? and end results in benchmarks was XAA being faster .

                              Anyway glamor works great in xserver 1.16 on kabini, kernel 3.16 made very good performance improvment ... i very appreciate what you developers do, other then inconsistent llvm by nature (seems to me that one needs more attention/work) i very much like how things works now .

                              Comment

                              Working...
                              X