[Beignet] [PATCH V2 00/15] Subgroup short extension patch set
Xiuli Pan
xiuli.pan at intel.com
Wed Oct 19 06:37:09 UTC 2016
From: Pan Xiuli <xiuli.pan at intel.com>
This patch set add intel_subgroups_short extension:
subgroup broadcast, subgroup shuffle and subgroup block read/write
We also add A64 block read logic for future use.
*** BLURB HERE ***
Pan Xiuli (15):
Libocl: Add intel_subgroups_short extension
Backend: Refine GenRegiter::offset
Backend: Refine register offset for simd shuffle
Backend: Refine sub group broadcast code for spec
Libocl: Add sub group broadcast short builtin function
Utest: Add check subgroup short helper function
Utest: Add test case for sub group broadcast short
Backend: Change the sel ir optimization for unpack register
Backend: Add short sub group builtin functions
Utest: Add test case for sub group short builtin functions
Backend: Add sub groups short shuffle builtin functions
Utest: Add test case for short type sub group shuffle
Backend: Add subgroup short block read/write
Utest: Add subgroup block read/write ushort test case
Backend: Add A64 subgroup block read/write support
backend/src/backend/gen8_context.cpp | 12 +
backend/src/backend/gen8_encoder.cpp | 70 +++++
backend/src/backend/gen8_encoder.hpp | 4 +
backend/src/backend/gen8_instruction.hpp | 13 +
backend/src/backend/gen_context.cpp | 289 +++++++++++++++-----
backend/src/backend/gen_defs.hpp | 3 +
backend/src/backend/gen_encoder.cpp | 34 ++-
backend/src/backend/gen_encoder.hpp | 4 +
backend/src/backend/gen_insn_selection.cpp | 37 +--
.../src/backend/gen_insn_selection_optimize.cpp | 2 +-
backend/src/backend/gen_register.hpp | 4 +
backend/src/ir/instruction.cpp | 39 +--
backend/src/ir/instruction.hpp | 6 +-
backend/src/libocl/include/ocl.h | 1 +
backend/src/libocl/tmpl/ocl_simd.tmpl.cl | 292 +++++++++++++++++----
backend/src/libocl/tmpl/ocl_simd.tmpl.h | 131 +++++++--
backend/src/llvm/llvm_gen_backend.cpp | 126 ++++++---
backend/src/llvm/llvm_gen_ocl_function.hxx | 50 ++--
backend/src/llvm/llvm_scalarize.cpp | 42 ++-
kernels/compiler_sub_group_shuffle.cl | 22 +-
kernels/compiler_sub_group_shuffle_down.cl | 23 +-
kernels/compiler_sub_group_shuffle_up.cl | 23 +-
kernels/compiler_sub_group_shuffle_xor.cl | 23 +-
kernels/compiler_subgroup_broadcast.cl | 10 +
kernels/compiler_subgroup_buffer_block_read.cl | 47 +++-
kernels/compiler_subgroup_buffer_block_write.cl | 44 +++-
kernels/compiler_subgroup_image_block_read.cl | 49 +++-
kernels/compiler_subgroup_image_block_write.cl | 46 +++-
kernels/compiler_subgroup_reduce.cl | 22 ++
kernels/compiler_subgroup_scan_exclusive.cl | 36 +++
kernels/compiler_subgroup_scan_inclusive.cl | 36 +++
src/cl_extensions.h | 5 +-
utests/compiler_sub_group_shuffle.cpp | 52 +++-
utests/compiler_sub_group_shuffle_down.cpp | 54 +++-
utests/compiler_sub_group_shuffle_up.cpp | 54 +++-
utests/compiler_sub_group_shuffle_xor.cpp | 54 +++-
utests/compiler_subgroup_broadcast.cpp | 11 +
utests/compiler_subgroup_buffer_block_read.cpp | 73 +++++-
utests/compiler_subgroup_buffer_block_write.cpp | 74 +++++-
utests/compiler_subgroup_image_block_read.cpp | 98 +++++--
utests/compiler_subgroup_image_block_write.cpp | 73 +++++-
utests/compiler_subgroup_reduce.cpp | 66 +++++
utests/compiler_subgroup_scan_exclusive.cpp | 66 +++++
utests/compiler_subgroup_scan_inclusive.cpp | 66 +++++
utests/utest_helper.cpp | 20 ++
utests/utest_helper.hpp | 2 +
46 files changed, 1942 insertions(+), 366 deletions(-)
--
2.7.4
More information about the Beignet
mailing list