From 4c36f8d16db1a1711e01c681a14055635cab3308 Mon Sep 17 00:00:00 2001 From: Vladimir Paramuzov Date: Tue, 18 Jan 2022 09:44:16 +0300 Subject: [PATCH] [GPU] Allow 3d fsv16 layout for quantize and reduce prims (#9697) --- .../intel_gpu/src/graph/impls/ocl/quantize.cpp | 15 +++++++++++++++ .../intel_gpu/src/graph/impls/ocl/reduce.cpp | 10 ++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/quantize.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/quantize.cpp index 3bf7674d99a..677518902ec 100644 --- a/src/plugins/intel_gpu/src/graph/impls/ocl/quantize.cpp +++ b/src/plugins/intel_gpu/src/graph/impls/ocl/quantize.cpp @@ -102,58 +102,73 @@ attach_quantize_impl::attach_quantize_impl() { std::make_tuple(data_types::f32, format::fs_b_yx_fsv32), std::make_tuple(data_types::i8, format::fs_b_yx_fsv32), std::make_tuple(data_types::u8, format::fs_b_yx_fsv32), + std::make_tuple(data_types::f32, format::b_fs_yx_fsv16), std::make_tuple(data_types::f16, format::b_fs_yx_fsv16), std::make_tuple(data_types::i8, format::b_fs_yx_fsv16), std::make_tuple(data_types::u8, format::b_fs_yx_fsv16), + std::make_tuple(data_types::f32, format::byxf), std::make_tuple(data_types::f16, format::byxf), std::make_tuple(data_types::u8, format::byxf), std::make_tuple(data_types::i8, format::byxf), + std::make_tuple(data_types::f32, format::b_fs_yx_fsv4), std::make_tuple(data_types::f16, format::b_fs_yx_fsv4), std::make_tuple(data_types::u8, format::b_fs_yx_fsv4), std::make_tuple(data_types::i8, format::b_fs_yx_fsv4), + std::make_tuple(data_types::f32, format::b_fs_yx_fsv32), std::make_tuple(data_types::f16, format::b_fs_yx_fsv32), std::make_tuple(data_types::u8, format::b_fs_yx_fsv32), std::make_tuple(data_types::i8, format::b_fs_yx_fsv32), + std::make_tuple(data_types::f32, format::b_fs_zyx_fsv32), std::make_tuple(data_types::f16, format::b_fs_zyx_fsv32), std::make_tuple(data_types::u8, format::b_fs_zyx_fsv32), std::make_tuple(data_types::i8, format::b_fs_zyx_fsv32), + std::make_tuple(data_types::f32, format::bs_fs_yx_bsv16_fsv16), std::make_tuple(data_types::f16, format::bs_fs_yx_bsv16_fsv16), std::make_tuple(data_types::u8, format::bs_fs_yx_bsv16_fsv16), std::make_tuple(data_types::i8, format::bs_fs_yx_bsv16_fsv16), + std::make_tuple(data_types::f32, format::bs_fs_zyx_bsv16_fsv16), std::make_tuple(data_types::f16, format::bs_fs_zyx_bsv16_fsv16), std::make_tuple(data_types::u8, format::bs_fs_zyx_bsv16_fsv16), std::make_tuple(data_types::i8, format::bs_fs_zyx_bsv16_fsv16), + std::make_tuple(data_types::f32, format::bfyx), std::make_tuple(data_types::f16, format::bfyx), std::make_tuple(data_types::i32, format::bfyx), std::make_tuple(data_types::u8, format::bfyx), std::make_tuple(data_types::i8, format::bfyx), + std::make_tuple(data_types::f32, format::byxf), std::make_tuple(data_types::f16, format::byxf), std::make_tuple(data_types::i32, format::byxf), std::make_tuple(data_types::u8, format::byxf), std::make_tuple(data_types::i8, format::byxf), + std::make_tuple(data_types::f32, format::yxfb), std::make_tuple(data_types::f16, format::yxfb), + std::make_tuple(data_types::f32, format::bfzyx), std::make_tuple(data_types::f16, format::bfzyx), std::make_tuple(data_types::i32, format::bfzyx), std::make_tuple(data_types::u8, format::bfzyx), std::make_tuple(data_types::i8, format::bfzyx), + std::make_tuple(data_types::f32, format::bfwzyx), std::make_tuple(data_types::f16, format::bfwzyx), std::make_tuple(data_types::i32, format::bfwzyx), std::make_tuple(data_types::u8, format::bfwzyx), std::make_tuple(data_types::i8, format::bfwzyx), + std::make_tuple(data_types::f32, format::b_fs_zyx_fsv16), std::make_tuple(data_types::f16, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::u8, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::i8, format::b_fs_zyx_fsv16), std::make_tuple(data_types::f32, format::bs_fs_yx_bsv32_fsv32), std::make_tuple(data_types::f16, format::bs_fs_yx_bsv32_fsv32), diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/reduce.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/reduce.cpp index 5ec15edd47a..6b20c455431 100644 --- a/src/plugins/intel_gpu/src/graph/impls/ocl/reduce.cpp +++ b/src/plugins/intel_gpu/src/graph/impls/ocl/reduce.cpp @@ -86,21 +86,31 @@ attach_reduce_impl::attach_reduce_impl() { std::make_tuple(data_types::i32, format::bfyx), std::make_tuple(data_types::i8, format::bfyx), std::make_tuple(data_types::u8, format::bfyx), + std::make_tuple(data_types::f32, format::bfzyx), std::make_tuple(data_types::f16, format::bfzyx), std::make_tuple(data_types::i32, format::bfzyx), std::make_tuple(data_types::i8, format::bfzyx), std::make_tuple(data_types::u8, format::bfzyx), + std::make_tuple(data_types::f32, format::bfwzyx), std::make_tuple(data_types::f16, format::bfwzyx), std::make_tuple(data_types::i32, format::bfwzyx), std::make_tuple(data_types::i8, format::bfwzyx), std::make_tuple(data_types::u8, format::bfwzyx), + std::make_tuple(data_types::f32, format::b_fs_yx_fsv16), std::make_tuple(data_types::f16, format::b_fs_yx_fsv16), std::make_tuple(data_types::i32, format::b_fs_yx_fsv16), std::make_tuple(data_types::i8, format::b_fs_yx_fsv16), std::make_tuple(data_types::u8, format::b_fs_yx_fsv16), + + std::make_tuple(data_types::f32, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::f16, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::i32, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::i8, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::u8, format::b_fs_zyx_fsv16), + std::make_tuple(data_types::f32, format::b_fs_yx_fsv32), std::make_tuple(data_types::f16, format::b_fs_yx_fsv32), std::make_tuple(data_types::i32, format::b_fs_yx_fsv32),