claudius/mesa-aco

( forked from gloriouseggroll/mesa-aco )

Project ID: 29455

Description

mesa built with Valve's ACO shader compiler, LTO, and vulkan gpu selection layer for non-nvidia igpu+dgpu setups.

  • This repo checks every hour for updates to mesa-aco and submits new builds if changes are found.

ACO:
https://steamcommunity.com/games/221410/announcements/detail/1602634609636894200


LTO:
https://gcc.gnu.org/onlinedocs/gccint/LTO.html


Vulkan device selection layer:
https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1766


WHY DEVICE SELECT OPTION?

  • Device Select is only necessary for multi-gpu setups, such as amd apu + amd gpu and games that use Vulkan natively, both in WINE and native linux.
  • Some games force the igpu to be used, so a way to tell it to use the dgpu for vulkan is needed, this is why this patch exists.
  • This is the vulkan equivalent of DRI_PRIME=1.

Some examples of native vulkan games that benefit from this: DOOM 2016
Strange brigade
Wolfenstein II
Rise of the Tomb Raider
Shadow of the Tomb Raider

Examples of use case:

  • If you have a ryzen laptop with vega integrated graphics, and also has a dedicated GPU like an RX560X or RX 5500M
  • If you have a ryzen 2200G/2400G desktop with vega integrated graphics and also have a dedicated GPU such as an RX 560/570/580

In both of the above cases, some native Vulkan games, DOOM for example, will force usage on the vega igpu instead of the dedicated GPU.
This is where this layer comes in.

Installation Instructions

PLEASE MANUALLY CREATE THE REPO. QUICK ENABLE WILL ONLY ENABLE 64 BIT. YOU NEED 32 BIT (i686) AND 64 BIT (x86_64):

Copy the following and paste it into a new file /etc/yum.repos.d/mesa-aco.repo

[gloriouseggroll-mesa-aco] name=gloriouseggroll-mesa-aco baseurl=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-aco/fedora-$releasever-$basearch/ type=rpm-md skip_if_unavailable=True gpgcheck=1 gpgkey=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-aco/pubkey.gpg repo_gpgcheck=0 enabled=1 enabled_metadata=1 [gloriouseggroll-mesa-aco-i386] name=gloriouseggroll-mesa-aco-i386 baseurl=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-aco/fedora-$releasever-i386/ type=rpm-md skip_if_unavailable=True gpgcheck=1 gpgkey=https://copr-be.cloud.fedoraproject.org/results/gloriouseggroll/mesa-aco/pubkey.gpg repo_gpgcheck=0 enabled=1 enabled_metadata=1

Then:
sudo dnf update --best --allowerasing

TO UNDO CHANGES AND REVERT SYSTEM TO STOCK:
Remove /etc/yum.repos.d/mesa-aco.repo
Then run:
sudo dnf distro-sync

Usage instructions for native vulkan device selection are as follows:

  1. Get your device's vendor id and device id:
    Example:
# lspci -nn | grep -i vga 43:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Vega 20 [Radeon VII] [1002:66af] (rev c1)

Device ID in the example above: 1002:66af

  1. Set before game launch command:
MESA_VK_DEVICE_SELECT=vendor:device

Example for Steam launch options:

MESA_VK_DEVICE_SELECT=1002:66af %command%

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