[Mesa-dev] [PATCH 0/7] radv: implement 32-bit GPU pointers for user SGPRs

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri May 18 16:00:42 UTC 2018


Hi list,

This series implements support for 32-bit GPU pointers which reduces
the number of user SGPRs that are needed for binding descriptors.

There is no CTS regressions and all games seem to get a minor
performance boost (tested on Polaris/Vega).

If you want to test or run some benchmarks yourself, please note
that LLVM 7.0 is required.

Please review,
Thanks!

Samuel Pitoiset (7):
  radv/winsys: request high address
  radv/winsys: allow to allocate BOs in the 32-bit addr space
  radv: set amdgpu-32bit-address-high-bits LLVM attribute
  radv: allocate the upload BO in the 32-bit addr space
  radv: allocate descriptor BOs in the 32-bit addr space
  radv: add set_loc_shader_ptr() helper
  radv: add support for 32-bit pointers in user data SGPRs

 src/amd/vulkan/radv_cmd_buffer.c              | 16 ++++---
 src/amd/vulkan/radv_descriptor_set.c          |  3 +-
 src/amd/vulkan/radv_device.c                  |  6 ++-
 src/amd/vulkan/radv_nir_to_llvm.c             | 48 +++++++++++++------
 src/amd/vulkan/radv_private.h                 | 18 +++++--
 src/amd/vulkan/radv_radeon_winsys.h           |  1 +
 src/amd/vulkan/radv_shader.c                  |  1 +
 src/amd/vulkan/radv_shader.h                  |  1 +
 src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 13 +++--
 9 files changed, 75 insertions(+), 32 deletions(-)

-- 
2.17.0



More information about the mesa-dev mailing list