mesa/src/amd/common
Timur Kristóf 0746b98f4a ac/nir: Properly handle when mesh API workgroup size is smaller than HW.
The problem is that the real workgroup launched on NGG HW
can be larger than the size specified by the API, and the
extra waves need to keep up with barriers in the API waves.

There are 2 different cases:

1. The whole API workgroup fits in a single wave.
   We can shrink the barriers to subgroup scope and
   don't need to insert any extra ones.

2. The API workgroup occupies multiple waves, but not
   all. In this case, we emit code that consumes every
   barrier on the extra waves.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15034>
2022-02-25 06:31:33 +00:00
..
ac_binary.c ac,radeonsi: use correct VGPR granularity on Aldebaran 2021-03-10 18:02:28 +00:00
ac_binary.h
ac_debug.c ac/debug: add an option to disable colors for printed IBs 2021-09-01 00:42:58 +00:00
ac_debug.h
ac_drm_fourcc.h ac: fix win32 build 2021-07-06 14:49:24 +00:00
ac_gpu_info.c ac/gpu_info: print units for some radeon_info fields 2022-02-22 11:41:04 +00:00
ac_gpu_info.h amd: add a workaround for an SQ perf counter bug 2022-02-22 11:41:04 +00:00
ac_msgpack.c ac/rgp: add ac_msgpack.h/c 2021-02-19 14:29:46 +00:00
ac_msgpack.h ac/rgp: add ac_msgpack.h/c 2021-02-19 14:29:46 +00:00
ac_nir.c ac: move ac_lower_indirect_derefs() outside of the LLVM dir 2021-04-23 11:52:01 +02:00
ac_nir.h ac: move ac_exp_param.h to ac_nir.h 2022-01-05 12:46:31 +00:00
ac_nir_cull.c ac/nir: use shorter builder names 2022-01-21 13:45:33 +00:00
ac_nir_lower_esgs_io_to_mem.c ac/nir: avoid providing a write_mask to intrinsic builders 2022-01-21 13:45:33 +00:00
ac_nir_lower_ngg.c ac/nir: Properly handle when mesh API workgroup size is smaller than HW. 2022-02-25 06:31:33 +00:00
ac_nir_lower_tess_io_to_mem.c ac/nir: use shorter builder names 2022-01-21 13:45:33 +00:00
ac_perfcounter.c ac: add initial SPM support 2021-11-11 10:05:49 +00:00
ac_perfcounter.h ac: add initial SPM support 2021-11-11 10:05:49 +00:00
ac_rgp.c ac/gpu_info: set cu_mask correctly for Arcturus 2022-01-05 01:36:10 -05:00
ac_rgp.h ac/rgp: add support for dumping SPM data 2021-11-11 10:05:49 +00:00
ac_rgp_elf_object_pack.c treewide: drop mtypes/macros includes from main 2021-12-08 22:14:45 +00:00
ac_rtld.c replace 0 with NULL for NULL pointers 2022-01-10 22:53:32 +00:00
ac_rtld.h ac/rtld: make ac_rtld_upload returns the code size 2021-03-05 13:10:11 +00:00
ac_shader_args.c ac: add shader return values into ac_shader_args 2020-12-09 20:13:24 +00:00
ac_shader_args.h radv: declare a new shader argument for loading the VRS rates 2022-02-16 08:11:15 +01:00
ac_shader_util.c ac,radeonsi: rework and optimize how TMPRING_SIZE is set 2022-02-22 11:41:04 +00:00
ac_shader_util.h ac,radeonsi: rework and optimize how TMPRING_SIZE is set 2022-02-22 11:41:04 +00:00
ac_shadowed_regs.c ac: update shadowed registers 2022-02-22 11:41:04 +00:00
ac_shadowed_regs.h ac: add ifdef __cplusplus guard to header 2021-01-14 10:33:10 +01:00
ac_spm.c ac/spm: fix determining the counter slot 2021-11-15 11:24:36 +01:00
ac_spm.h ac: add initial SPM support 2021-11-11 10:05:49 +00:00
ac_sqtt.c radv: Add safety check for RGP traces on VanGogh. 2021-12-17 21:25:01 +00:00
ac_sqtt.h radv: Add safety check for RGP traces on VanGogh. 2021-12-17 21:25:01 +00:00
ac_surface.c ac/surface: don't set the display flag for 1D textures 2022-02-22 11:41:04 +00:00
ac_surface.h ac/surface: add more elements to meta equations because HTILE can use them 2022-02-22 11:41:04 +00:00
ac_surface_meta_address_test.c ac/surface: add tests for CmaskAddrFromCoord on GFX10+ 2021-08-05 06:37:09 +00:00
ac_surface_modifier_test.c ac/surface/tests: fix missing NUM_PKRS extraction in test_modifier 2022-02-22 11:41:04 +00:00
ac_surface_test_common.h ac/surface/tests: fix RB counts 2021-06-20 01:22:01 -04:00
ac_uvd_dec.h amd: move uvd decode definitions to common place 2022-01-20 07:07:32 +10:00
ac_vcn_dec.h amd: move vcn decoding regs + structs to a common file. 2022-01-20 07:07:30 +10:00
amd_family.c ac: change family names to uppercase in ac_get_family_name() 2021-11-23 08:07:41 +00:00
amd_family.h amd: add Beige Goby support 2021-05-24 17:41:34 +00:00
amd_kernel_code_t.h
gfx10_format_table.h
gfx10_format_table.py python: drop python2 support 2021-08-14 21:44:32 +00:00
meson.build ac: move ac_exp_param.h to ac_nir.h 2022-01-05 12:46:31 +00:00
sid.h amd: add SDMA_NOP_PAD 2022-01-11 12:18:35 +00:00
sid_tables.py python: drop python2 support 2021-08-14 21:44:32 +00:00