The patch LGTM, but another question in inline comment.

> -----Original Message-----
> From: Beignet [mailto:[email protected]] On Behalf Of
> Xiuli Pan
> Sent: Wednesday, August 24, 2016 16:17
> To: [email protected]
> Cc: Pan, Xiuli <[email protected]>; Zhu, Zhe <[email protected]>
> Subject: [Beignet] [PATCH] Libocl: Fix get_sub_group_size bug
> 
> From: Pan Xiuli <[email protected]>
> 
> If last sub group has the max sub group size, it will return 0 instead of max
> sub group size. Fix the bug.
> 
> Signed-off-by: Pan Xiuli <[email protected]>
> ---
>  backend/src/libocl/tmpl/ocl_simd.tmpl.cl | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/backend/src/libocl/tmpl/ocl_simd.tmpl.cl
> b/backend/src/libocl/tmpl/ocl_simd.tmpl.cl
> index 9c09b21..f0ef7c0 100644
> --- a/backend/src/libocl/tmpl/ocl_simd.tmpl.cl
> +++ b/backend/src/libocl/tmpl/ocl_simd.tmpl.cl
> @@ -31,7 +31,7 @@ uint get_sub_group_size(void)
>    uint threadn = get_num_sub_groups();
>    uint threadid = get_sub_group_id();
>    if((threadid == (threadn - 1)) && (threadn > 1))

Why threadn > 1? How about thread = 1?


> -    return (get_local_size(0)*get_local_size(1)*get_local_size(2)) %
> get_max_sub_group_size();
> +    return (get_local_size(0)*get_local_size(1)*get_local_size(2) -1) %
> + get_max_sub_group_size() + 1;
>    else
>      return get_max_sub_group_size();
>  }
> --
> 2.7.4
> 
> _______________________________________________
> Beignet mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/beignet
_______________________________________________
Beignet mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/beignet

Reply via email to