You can sign up to get a daily email of our articles, see the Mailing List page!
  Go to:
Testing new Mesa ACO shader compiler for AMD
sr_ls_boy commented on 4 July 2019 at 11:36 pm UTC

So far, I haven't found a title that Mesa/ACO has a problem with.
I once was able to run 'Outlast 2' but it won't work anymore and I
don't know way. I'll keep looking.

dubigrasu commented on 4 July 2019 at 11:46 pm UTC

sr_ls_boySo far, I haven't found a title that Mesa/ACO has a problem with.
I once was able to run 'Outlast 2' but it won't work anymore and I
don't know way. I'll keep looking.

Have you tried Dying Light?

sr_ls_boy commented on 4 July 2019 at 11:55 pm UTC

dubigrasuHave you tried Dying Light?
I just did and the colors looked almost washed out. It almost looked like it was Black and White.

dubigrasu commented on 5 July 2019 at 12:15 am UTC

sr_ls_boy
dubigrasuHave you tried Dying Light?
I just did and the colors looked almost washed out. It almost looked like it was Black and White.
Ah, thanks. Similar with what I found.

Shmerl commented on 5 July 2019 at 12:43 am UTC

GuestSo I tried compiling Mesa myself for the first time. Before I used the ppa referenced in the news article on GoL. I used your script @Shmerl but that did not work. I built the newest version of meson 0.51 but it kept looping endlessly on regenerating build files. Then I figured it is due to the compiler option meson --native-files and I deleted that. After that everything compiled and I tried launching vulkaninfo and games with LD_LIBRARY_PATH and VK_ICD_FILENAMES referenced to the build but all die saying bad driver.
What am I missing?

Just FYI, the script assumes you place your built Mesa in /opt/mesa-${mesa_branch} (which is normally /opt/mesa-master).

My custom Mesa deployment looks like this:

/opt/mesa-master
/opt/mesa-master/x86_64
/opt/mesa-master/x86_64/libglapi.so.0.0.0
/opt/mesa-master/x86_64/libglapi.so.0
/opt/mesa-master/x86_64/libglapi.so
/opt/mesa-master/x86_64/libVkLayer_MESA_overlay.so
/opt/mesa-master/x86_64/libvulkan_radeon.so
/opt/mesa-master/x86_64/libGLX_mesa.so.0.0.0
/opt/mesa-master/x86_64/libGLX_mesa.so.0
/opt/mesa-master/x86_64/libGLX_mesa.so
/opt/mesa-master/x86_64/libgbm.so.1.0.0
/opt/mesa-master/x86_64/libgbm.so.1
/opt/mesa-master/x86_64/libgbm.so
/opt/mesa-master/x86_64/libEGL_mesa.so.0.0.0
/opt/mesa-master/x86_64/libEGL_mesa.so.0
/opt/mesa-master/x86_64/libEGL_mesa.so
/opt/mesa-master/x86_64/pkgconfig
/opt/mesa-master/x86_64/pkgconfig/dri.pc
/opt/mesa-master/x86_64/pkgconfig/gbm.pc
/opt/mesa-master/x86_64/pkgconfig/egl.pc
/opt/mesa-master/x86_64/pkgconfig/gl.pc
/opt/mesa-master/x86_64/radeonsi_dri.so
/opt/mesa-master/x86_64/radeonsi_drv_video.so
/opt/mesa-master/share
/opt/mesa-master/share/vulkan
/opt/mesa-master/share/vulkan/icd.d
/opt/mesa-master/share/vulkan/icd.d/radeon_icd.x86_64.json
/opt/mesa-master/share/vulkan/explicit_layer.d
/opt/mesa-master/share/vulkan/explicit_layer.d/VkLayer_MESA_overlay.json
/opt/mesa-master/share/drirc.d
/opt/mesa-master/share/drirc.d/00-mesa-defaults.conf
/opt/mesa-master/share/glvnd
/opt/mesa-master/share/glvnd/egl_vendor.d
/opt/mesa-master/share/glvnd/egl_vendor.d/50_mesa.json


I recommend placing it there, since configured paths are written in the built files.

You can change the location in the build script if you want to place it somewhere else.

sr_ls_boy commented on 5 July 2019 at 1:46 pm UTC

I managed to get Outlast 2 to work with vanilla wine without using the staging patches.

+
EDIT: Far Cry 4 is another title that can no longer work if the staging patches are
applied.

sr_ls_boy commented on 6 July 2019 at 12:50 pm UTC

I just tried Mad Max with the backend branch/commit d271fd and it worked.

medicalcannabis commented on 6 July 2019 at 5:41 pm UTC

This was trivial to set up in Gentoo. I took the existing mesa-9999 ebuild, copied it to mesa-9999-r1.ebuild and changed the git address in the file to point at ACO's repo. Once I recompiled (and keyworded llvm/clang v8 to ~amd64), everything worked.

On AMD Raven Ridge hardware (Ryzen 5 2400G), this has been a night-and-day difference. Games like No Man's Sky (beta Vulkan renderer) would crash after loading all shaders due to the lag required to build motion blur on the fly. This not only solved that issue, but I'm able to do 30fps with all settings maxed, when before it was a complete slideshow. On emulators such as Cemu and Dolphin, shaders are compiling fast enough that I don't even have to run through each Mario Kart 8 level once to build a sufficient shader cache.

dubigrasu commented on 7 July 2019 at 8:30 am UTC

Shadow of the Tomb Raider tested with Proton, Highest settings:

Average FPS:
LLVM = 50.1
ACO = 52.8

Not that much of a difference in terms of average FPS, but the ACO frametimes still look better:

image

The_Aquabat commented on 8 July 2019 at 10:33 am UTC

woww someone just deleted my build on Opensuse Build Service, with no advice no email, nothing. I think that OBS devs don't like out of tree packages.

  Go to:

You need to Register and Login to comment, submit articles and more.


Or login with...

Livestreams & Videos
Community Livestreams
  • Friday Livestream with Samsai
  • Date:
See more!
Popular this week
View by Category
Contact
Latest Comments
Latest Forum Posts