Re: [Mesa-dev] [PATCH] gallivm: allow arch rounding with avx512
I agree that we’re probably dropping into fallback paths in a variety of locations as there are a number of width==256 tests in the gallivm code. Right now I’m working through piglit regressions versus avx2 in our driver, and the rounding tests weren't passing. Thanks. > On Nov 1, 2017, at 2:27 PM, Roland Scheideggerwrote: > > Looks good to me. > Albeit I think there's quite a few more places which probably should > handle avx512... > > Reviewed-by: Roland Scheidegger > > Am 01.11.2017 um 20:17 schrieb Tim Rowley: >> Fixes piglit vs-roundeven-{float,vec[234]} with simd16 VS. >> --- >> src/gallium/auxiliary/gallivm/lp_bld_arit.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/src/gallium/auxiliary/gallivm/lp_bld_arit.c >> b/src/gallium/auxiliary/gallivm/lp_bld_arit.c >> index cf1958b3b6..a1edd349f1 100644 >> --- a/src/gallium/auxiliary/gallivm/lp_bld_arit.c >> +++ b/src/gallium/auxiliary/gallivm/lp_bld_arit.c >> @@ -1953,7 +1953,8 @@ arch_rounding_available(const struct lp_type type) >> { >>if ((util_cpu_caps.has_sse4_1 && >>(type.length == 1 || type.width*type.length == 128)) || >> - (util_cpu_caps.has_avx && type.width*type.length == 256)) >> + (util_cpu_caps.has_avx && type.width*type.length == 256) || >> + (util_cpu_caps.has_avx512f && type.width*type.length == 512)) >> return TRUE; >>else if ((util_cpu_caps.has_altivec && >> (type.width == 32 && type.length == 4))) >> > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] gallivm: allow arch rounding with avx512
Looks good to me. Albeit I think there's quite a few more places which probably should handle avx512... Reviewed-by: Roland ScheideggerAm 01.11.2017 um 20:17 schrieb Tim Rowley: > Fixes piglit vs-roundeven-{float,vec[234]} with simd16 VS. > --- > src/gallium/auxiliary/gallivm/lp_bld_arit.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/src/gallium/auxiliary/gallivm/lp_bld_arit.c > b/src/gallium/auxiliary/gallivm/lp_bld_arit.c > index cf1958b3b6..a1edd349f1 100644 > --- a/src/gallium/auxiliary/gallivm/lp_bld_arit.c > +++ b/src/gallium/auxiliary/gallivm/lp_bld_arit.c > @@ -1953,7 +1953,8 @@ arch_rounding_available(const struct lp_type type) > { > if ((util_cpu_caps.has_sse4_1 && > (type.length == 1 || type.width*type.length == 128)) || > - (util_cpu_caps.has_avx && type.width*type.length == 256)) > + (util_cpu_caps.has_avx && type.width*type.length == 256) || > + (util_cpu_caps.has_avx512f && type.width*type.length == 512)) >return TRUE; > else if ((util_cpu_caps.has_altivec && > (type.width == 32 && type.length == 4))) > ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH] gallivm: allow arch rounding with avx512
Fixes piglit vs-roundeven-{float,vec[234]} with simd16 VS. --- src/gallium/auxiliary/gallivm/lp_bld_arit.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/auxiliary/gallivm/lp_bld_arit.c b/src/gallium/auxiliary/gallivm/lp_bld_arit.c index cf1958b3b6..a1edd349f1 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_arit.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_arit.c @@ -1953,7 +1953,8 @@ arch_rounding_available(const struct lp_type type) { if ((util_cpu_caps.has_sse4_1 && (type.length == 1 || type.width*type.length == 128)) || - (util_cpu_caps.has_avx && type.width*type.length == 256)) + (util_cpu_caps.has_avx && type.width*type.length == 256) || + (util_cpu_caps.has_avx512f && type.width*type.length == 512)) return TRUE; else if ((util_cpu_caps.has_altivec && (type.width == 32 && type.length == 4))) -- 2.14.1 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev