Description
Details
- Mesa (git) with Valve's ACO shader compiler, also built with LTO and LLVM (git)
- ACO Details
- ACO testing instructions
- daniel-schuermann/mesa
- Project forked from gloriouseggroll/mesa-git and quickly modified to use an ACO-patched Mesa source instead
Information
- Provides an alternate Mesa shader compiler (named ACO) with notably improved shader compile times (compared to the default LLVM shader compiler)
- Currently only supports RADV (so AMD GPUs that support Vulkan)
- Can benefit native Vulkan games, and games ran under Wine via DXVK or D9VK
Improvements:
- Notably improves shader compile times and overall experience with Guild Wars 2 and D9VK
- Seemingly slightly improves average FPS with FFXIV and DXVK
Updates
- This repo will likely receive updates at random periods until I either lose interest, someone else maintains a repo better, or ACO is implemented upstream
- If an exciting commit is pushed and you want an update, feel free to contact me
Installation Instructions
Install
- Add this repo's GPG key:
sudo rpm --import 'https://copr-be.cloud.fedoraproject.org/results/espionage724/mesa-git-acotest/pubkey.gpg'
- Add both this repo and gloriouseggroll/llvm-git:
sudo -e '/etc/yum.repos.d/espionage724-mesa-git-acotest.repo'
[espionage724-mesa-git-acotest]
name=espionage724-mesa-git-acotest
baseurl=https://copr-be.cloud.fedoraproject.org/results/espionage724/mesa-git-acotest/fedora-$releasever-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/espionage724/mesa-git-acotest/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
priority=1
[espionage724-mesa-git-acotest-i386]
name=espionage724-mesa-git-acotest-i386
baseurl=https://copr-be.cloud.fedoraproject.org/results/espionage724/mesa-git-acotest/fedora-$releasever-i386/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/espionage724/mesa-git-acotest/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
priority=1
[gloriouseggroll-llvm-git]
name=gloriouseggroll-llvm-git
baseurl=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/fedora-$releasever-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
[gloriouseggroll-llvm-git-i386]
name=gloriouseggroll-llvm-git-i386
baseurl=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/fedora-$releasever-i386/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
-
If using GNOME on Wayland at all, see gloriouseggroll/mutter and add it as well, or alternatively only use Xorg and disable Wayland being used on the log-in screen/GDM
-
Update Mesa packages:
sudo dnf update
Verifying
- Look in Terminal for this line after starting anything that uses Vulkan:
WARNING: Experimental compiler backend enabled. Here be dragons! Incorrect rendering, GPU hangs and/or resets are likely
- Look at
vulkaninfo
for mention of ACO:
vulkaninfo | grep 'AMD RADV/ACO'
- Use DXVK's HUD environment variable (for both DXVK and D9VK) to check for mention of ACO:
DXVK_HUD='full'
Troubleshooting
- Temporarily disable ACO and use LLVM with an environment variable:
RADV_PERFTEST=llvm
Uninstall
- Remove this repo's GPG key:
sudo rpm -e 'gpg-pubkey-716644b8-5d1d6307'
- Remove this repo:
sudo rm -v '/etc/yum.repos.d/espionage724-mesa-git-acotest.repo'
- Switch this repo's installed Mesa-related packages to either standard Fedora packages or another repo's:
sudo dnf distro-sync
Active Releases
The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).
Release | Architectures | Repo Download |
---|
* Total number of downloaded packages.
External Repository List
The following repositories are accessible during builds
- https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/fedora-30-x86_64/
- https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/llvm-git/fedora-30-i386/
- https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-git/fedora-30-x86_64/
- https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-git/fedora-30-i386/