mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-22 06:20:22 +01:00
radv: lower ffma in nir.
So it appears the Vulkan SPIR-V fma opcode can be equivalent to a
mad operation, and the fma hw opcode on AMD hw is issued like a double
opcode so is slower. Also the radeonsi stack does this.
This appears to improve performance on a number of games from Feral,
and thanks to Feral for noticing the problem.
I'm reposting this one as Marek indicated he thinks this is what
we should be doing on AMD hw.
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Cc: "17.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 2c61594d84)
[Emil Velikov: use correct file radv_shader.c -> radv_pipeline.c]
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Conflicts:
src/amd/vulkan/radv_shader.c
This commit is contained in:
parent
0bd7be0142
commit
41ec2af2a8
1 changed files with 1 additions and 0 deletions
|
|
@ -65,6 +65,7 @@ static const struct nir_shader_compiler_options nir_options = {
|
|||
.lower_unpack_unorm_4x8 = true,
|
||||
.lower_extract_byte = true,
|
||||
.lower_extract_word = true,
|
||||
.lower_ffma = true,
|
||||
.max_unroll_iterations = 32
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue