[Mesa-dev] [PATCH] radv: enable lowering of fpow to fexp2 and flog2

Bas Nieuwenhuizen basni at chromium.org
Wed Feb 21 11:45:44 UTC 2018


Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

On Fri, Feb 2, 2018 at 7:04 PM, Samuel Pitoiset <samuel.pitoiset at gmail.com>
wrote:

> There is no fpow in hardware, so it's always lowered somewhere,
> but it appears that lowering at NIR level is better. Figured while
> comparing compute shaders between RadeonSI and RADV.
>
> Polaris10:
> Totals from affected shaders:
> SGPRS: 18936 -> 18904 (-0.17 %)
> VGPRS: 12240 -> 12220 (-0.16 %)
> Spilled SGPRs: 2809 -> 2809 (0.00 %)
> Code Size: 718116 -> 719848 (0.24 %) bytes
> Max Waves: 1409 -> 1410 (0.07 %)
>
> Vega10:
> Totals from affected shaders:
> SGPRS: 18392 -> 18392 (0.00 %)
> VGPRS: 12008 -> 11920 (-0.73 %)
> Spilled SGPRs: 3001 -> 2981 (-0.67 %)
> Code Size: 777444 -> 778788 (0.17 %) bytes
> Max Waves: 1503 -> 1504 (0.07 %)
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
>  src/amd/vulkan/radv_shader.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
> index af094e6220..769e991f93 100644
> --- a/src/amd/vulkan/radv_shader.c
> +++ b/src/amd/vulkan/radv_shader.c
> @@ -67,6 +67,7 @@ static const struct nir_shader_compiler_options
> nir_options = {
>         .lower_extract_byte = true,
>         .lower_extract_word = true,
>         .lower_ffma = true,
> +       .lower_fpow = true,
>         .vs_inputs_dual_locations = true,
>         .max_unroll_iterations = 32
>  };
> --
> 2.16.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180221/25b8f5ce/attachment.html>


More information about the mesa-dev mailing list