Page 1 of 3 123 LastLast
Results 1 to 10 of 29

Thread: AMD R600 Gallium3D Optimizing Back-End Merged

  1. #1
    Join Date
    Jan 2007
    Posts
    15,411

    Default AMD R600 Gallium3D Optimizing Back-End Merged

    Phoronix: AMD R600 Gallium3D Optimizing Back-End Merged

    Vadim Girlin's shader-optimizing back-end for the AMD R600 Gallium3D driver has been merged into mainline Mesa...

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

  2. #2
    Join Date
    Jun 2010
    Location
    ฿ 16LDJ6Hrd1oN3nCoFL7BypHSEYL84ca1JR
    Posts
    1,052

    Default

    r600g/sb: initial commit of the optimizing shader backend -0/+17498
    I don't know how much of that is autogenerated, but it sure looks like a bigger chunk of work, so of course a big thanks who make stuff like this possible.

    Will this be usable for radeonsi in the future too?

    edit: Even with documentation!
    http://cgit.freedesktop.org/mesa/mes...notes.markdown
    Last edited by ChrisXY; 04-30-2013 at 05:45 PM.

  3. #3
    Join Date
    Jun 2009
    Posts
    2,933

    Default

    Quote Originally Posted by phoronix View Post
    Phoronix: AMD R600 Gallium3D Optimizing Back-End Merged

    Vadim Girlin's shader-optimizing back-end for the AMD R600 Gallium3D driver has been merged into mainline Mesa...

    http://www.phoronix.com/vr.php?view=MTM2MjA
    This is the patchset which brings Unigine Heaven to Windows 7 performance.

    Things just keep getting better and better!

    And to think that OpenCL is making progress and that the PM code has already been written and is awaiting release.... W00t w00t!

  4. #4
    Join Date
    Mar 2010
    Location
    Helsinki, Finland
    Posts
    75

    Default

    Looks like I may have to start considering using the FOSS drivers.

  5. #5
    Join Date
    Jan 2009
    Location
    Vienna, Austria; Germany; hello world :)
    Posts
    642

    Default

    Quote Originally Posted by pingufunkybeat View Post
    This is the patchset which brings Unigine Heaven to Windows 7 performance.

    Things just keep getting better and better!

    And to think that OpenCL is making progress and that the PM code has already been written and is awaiting release.... W00t w00t!

    just took Shank2 for a test-run and it's really noticably more fluid (e.g. the llvm-backend gained some small noticable improvement but with Vadim Girlin's tweaks performance really seems to shine

    would be interesting to see in the long-run how stability is with R600_DEBUG=sb

    w00t w00t !

  6. #6
    Join Date
    Sep 2010
    Posts
    716

    Default

    Quote Originally Posted by ChrisXY View Post
    r600g/sb: initial commit of the optimizing shader backend -0/+17498
    I don't know how much of that is autogenerated, but it sure looks like a bigger chunk of work, so of course a big thanks who make stuff like this possible.

    Will this be usable for radeonsi in the future too?

    edit: Even with documentation!
    http://cgit.freedesktop.org/mesa/mes...notes.markdown

    Unlykly.

    AMD devs want to utilise LLVM for all the low level stuff in their drivers, while this code is custom made. That is also why AMD devs have trouble with accepting this code. That would mean supporting unfamiliar code, while they want to focus on LLVM.

    And since its just r600g it wont work for radeonSI, and even if its highly succesfull for r600g gen hardware, radeonSI support different hw, so what works for r600g-sb may not work for newer GPU's.

  7. #7
    Join Date
    Aug 2012
    Location
    Pennsylvania, United States
    Posts
    1,920

    Default

    Quote Originally Posted by przemoli View Post
    Unlykly.

    AMD devs want to utilise LLVM for all the low level stuff in their drivers, while this code is custom made. That is also why AMD devs have trouble with accepting this code. That would mean supporting unfamiliar code, while they want to focus on LLVM.

    And since its just r600g it wont work for radeonSI, and even if its highly succesfull for r600g gen hardware, radeonSI support different hw, so what works for r600g-sb may not work for newer GPU's.
    They have said before that this code is just a stop-gap measure. They know its not the longterm solution. But the longterm (LLVM) solution is better than the current solution, BUT this solution is better than the longterm one right now. Its being merged knowing full well that it will be bin'ed once LLVM is optimized and under better handling.

  8. #8
    Join Date
    Jun 2009
    Posts
    2,933

    Default

    Quote Originally Posted by przemoli View Post
    AMD devs want to utilise LLVM for all the low level stuff in their drivers, while this code is custom made.
    I thought that this work ran very late, on HW instructions, so it can be run with LLVM too.

    Of course that the optimisations themselves will eventually be done by LLVM as its backend improves. In the meantime, this can run after LLVM generates HW instructions, it doesn't hurt anything there.

  9. #9
    Join Date
    Aug 2009
    Location
    Russe, Bulgaria
    Posts
    540

    Default

    Quote Originally Posted by pingufunkybeat View Post
    I thought that this work ran very late, on HW instructions, so it can be run with LLVM too.

    Of course that the optimisations themselves will eventually be done by LLVM as its backend improves. In the meantime, this can run after LLVM generates HW instructions, it doesn't hurt anything there.
    IIRC, there were cases where LLVM+r600-sb, made bad result against r600-sb alone.

  10. #10
    Join Date
    Oct 2008
    Posts
    3,214

    Default

    Quote Originally Posted by Drago View Post
    IIRC, there were cases where LLVM+r600-sb, made bad result against r600-sb alone.
    That's true, but i think at least 1 of those problems has already been addressed. I'm not sure if they all have or not, or whether it's mostly helpful with only a few regressions or if it has lots of problems.

    Sounds like a good thing for Michael to test.

    / i'm going to cry when michael's tests only consist of the quake 3 engine.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •