mesa/src/amd
Samuel Pitoiset 7a0a6a7180 radv: do not expose GTT as device local memory mostly for APUs
On APUs, the memory is unified (all heaps are equally fast) and
apps should count all memory heaps together. But some games like
Id Tech games (Youngblood and such) don't manage memory correctly
on APUs and they spill everything when one VRAM heap is full.

Instead of spilling buffers, they should just allocate new buffers
in the second heap but it seems like these games are confused if
two memory heaps have the DEVICE_LOCAL_BIT set.

This is probably a first step towards better memory management on
APUs but there is still some work to do if we want to run most apps
with a small dedicated VRAM (256MB or so).

This gives a huge boost for Id Tech games on APUs, and doesn't
seem to reduce Feral games performance.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4771>
2020-04-27 22:41:41 +00:00
..
addrlib amd/addrlib: Use enum instead of sparse chars to identify dimensions 2020-04-16 11:10:52 +00:00
common drm-uapi,radv,radeonsi: Add amdgpu_drm.h header. 2020-04-27 12:27:02 +00:00
compiler aco: lower 8/16-bit integer arithmetic 2020-04-24 20:03:59 +01:00
llvm ac,radeonsi: fix compilations issues with LLVM 11 2020-04-27 17:13:36 +00:00
registers ac/registers: adjust some definitions for thread trace on GFX8 2020-03-06 08:00:39 +00:00
vulkan radv: do not expose GTT as device local memory mostly for APUs 2020-04-27 22:41:41 +00:00
Android.addrlib.mk android: amd/addrlib: add gfx10 support 2019-07-10 09:03:55 +02:00
Android.common.mk Android.mk: Tweak MESA_ENABLE_LLVM checks 2020-03-19 21:20:08 +00:00
Android.compiler.mk android: aco: fix PIPE_FORMAT related building errors 2020-03-04 22:25:36 +01:00
Android.mk android: aco: add support for libmesa_aco 2019-09-28 15:56:34 +02:00
Makefile.sources aco: rename aco_lower_bool_phis() -> aco_lower_phis() 2020-04-10 07:19:27 +00:00
meson.build amd: Move all amd/common code that depends on LLVM to amd/llvm. 2019-10-08 00:44:08 +00:00