From 9b35d3457d84f25645b85a3927a76edc8a5d981e Mon Sep 17 00:00:00 2001 From: Aditya Bhosale Date: Wed, 12 Sep 2018 01:27:08 +0530 Subject: [PATCH 1/2] Fix bank conflict avoidance for scans --- pyopencl/scan.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pyopencl/scan.py b/pyopencl/scan.py index ab8aee30..31a9ede4 100644 --- a/pyopencl/scan.py +++ b/pyopencl/scan.py @@ -157,7 +157,6 @@ void ${kernel_name}( scan_type value; int dummy; }; - LOCAL_MEM struct wrapped_scan_type ldata[K + 1][WG_SIZE + 1]; %else: struct wrapped_scan_type { @@ -165,8 +164,8 @@ void ${kernel_name}( }; // padded in WG_SIZE to avoid bank conflicts - LOCAL_MEM struct wrapped_scan_type ldata[K + 1][WG_SIZE]; %endif + LOCAL_MEM struct wrapped_scan_type ldata[K + 1][WG_SIZE + 1]; %if is_segmented: LOCAL_MEM char l_segment_start_flags[K][WG_SIZE]; -- GitLab From c829fd2c1aa65e7bef51bea50fca13748871f689 Mon Sep 17 00:00:00 2001 From: Aditya Bhosale Date: Wed, 12 Sep 2018 01:29:03 +0530 Subject: [PATCH 2/2] Minor comment fix --- pyopencl/scan.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pyopencl/scan.py b/pyopencl/scan.py index 31a9ede4..6a598081 100644 --- a/pyopencl/scan.py +++ b/pyopencl/scan.py @@ -162,9 +162,8 @@ void ${kernel_name}( { scan_type value; }; - - // padded in WG_SIZE to avoid bank conflicts %endif + // padded in WG_SIZE to avoid bank conflicts LOCAL_MEM struct wrapped_scan_type ldata[K + 1][WG_SIZE + 1]; %if is_segmented: -- GitLab