diff --git a/src/plugins/intel_gpu/include/intel_gpu/runtime/format.hpp b/src/plugins/intel_gpu/include/intel_gpu/runtime/format.hpp index 0eb16ac6a4f57a..d82c8ea99457d0 100644 --- a/src/plugins/intel_gpu/include/intel_gpu/runtime/format.hpp +++ b/src/plugins/intel_gpu/include/intel_gpu/runtime/format.hpp @@ -139,12 +139,8 @@ struct format { oyix, oxiy, os_iyx_osv16, ///< format used only for convolution weights - o_is_yx_isv2, ///< format used only for convolution weights o_is_yx_isv4, ///< format used only for convolution weights o_is_yx_isv16, ///< format used only for convolution weights - o_is_zyx_isv16, ///< format used only for convolution weights - os_yxi_osv16, ///< format used only for convolution weights - os_is_yx_osv16_isv2, ///< format used only for convolution weights os_is_yx_osv16_isv16, ///< format used for convolution i8 weights os_is_zyx_osv32_isv16, os_is_zyx_osv64_isv16, @@ -152,13 +148,7 @@ struct format { os_is_yx_isv16_osv16, ///< format used for blocked convolution os_is_zyx_isv16_osv16, ///< format used for weights for blocked 3D convolution is_os_zyx_isv16_osv16, ///< format used for weights for blocked 3D deconvolution - is_os_yx_osv8_isv4, ///< format used for weights for blocked deconvolution is_os_yx_isv16_osv16, ///< format used for weights for blocked deconvolution - is_os_yx_isv16_osv8, ///< format used for weights for blocked deconvolution - is_os_yx_isv16_osv4, ///< format used for weights for blocked deconvolution - is_os_yx_isv16_osv2, ///< format used for weights for blocked deconvolution - os_is_yx_isa8_osv16_isv2, ///< format used for weights for blocked 2D onednn convolution - os_is_zyx_isa8_osv16_isv2, ///< format used for weights for blocked 3D onednn convolution os_is_yx_isv8_osv16_isv2, ///< format used for weights for blocked 2D convolution os_is_zyx_isv8_osv16_isv2, ///< format used for weights for blocked 3D convolution ///< os - output feature maps slice, i - input feature maps, @@ -187,66 +177,24 @@ struct format { os_is_zyx_isa8_osv8_isv4, ///< format for weights for MMAD convolution os_is_yx_isa8_osv16_isv4, ///< format for weights for fully connected MMAD os_is_zyx_isa8_osv16_isv4, ///< format for weights for fully connected MMAD - os_is_yx_isa8_osv8_isv4_swizzled_by_4, ///< format for weights for MMAD convolution os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4, ///< format for weights for MMAD fsv32 convolution os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4, ///< format for weights for MMAD fsv32 convolution - os_is_yx_osa4_isa8_osv8_isv2, ///< format for weights for MMAD fsv32 convolution - os_is_zyx_osa4_isa8_osv8_isv2, ///< format for weights for MMAD fsv32 convolution os_is_zyx_osa4_isa8_osv8_isv4, ///< format for weights for MMAD fsv32 convolution os_is_yx_osa4_isa8_osv8_isv4, ///< format for weights for MMAD fsv32 convolution - os_is_yx_osa2_isa8_osv8_isv2, - os_is_zyx_osa2_isa8_osv8_isv2, - os_is_yx_osa2_isa8_osv16_isv2, - os_is_yx_osa2_isa8_osv16_isv4, - os_is_yx_isa8_osv8_isv2, - is_os_yx_isa8_osv8_isv2, - is_os_yx_isa8_osv8_isv4, - is_os_yx_osa8_isv16_osv4, - os_is_zyx_isa8_osv8_isv2, - is_os_zyx_isa8_osv8_isv2, - is_os_zyx_isa8_osv8_isv4, - is_os_yx_isa2_osa8_isv8_osv2, - is_os_yx_isa4_osa8_isv8_osv4, - is_os_yx_osa4_isa8_osv8_isv4, - is_o_yx_isv32, ///< format for weights for 1x1 MMAD convolutions - is_o32_yx_isv32_swizzled_by_4, ///< format for weights for 1x1 MMAD convolutions - os_is_y_x8_osv8_isv4, ///< format for weights for 1x1 MMAD convolutions - os_is_y_x8_osv8_isv4_swizzled_by_4, ///< format for weights for 1x1 MMAD convolutions os_is_yx_osv16_isv4, ///< format for weights for IMAD convolutions os_is_yx_osv8_isv4, ///< format used for convolution i8 weights - os_is_zyx_osv8_isv4, ///< format used for convolution i8 weights - os_is_yx_osv8_isv2, ///< format used for convolution fp16 weights - os_is_zyx_osv8_isv2, ///< format used for convolution fp16 weights os_is_zyx_osv16_isv16, ///< format for weights for IMAD convolutions os_is_yx_osv32_isv4_swizzled_by_2, ///< format for weights for IMAD convolutions os_is_yx_osv32_isv4, ///< format for weights for IMAD convolutions os_is_zyx_osv32_isv4, ///< format for weights for IMAD convolutions - os_is_osv32_isv32_swizzled_by_4, ///< format for weights for 1x1 IMAD convolution os_iyx_osv8, os_iyx_osv32__ai32, iy_xs_os_xsv2_osv8__ao32, iy_xs_os_xsv2_osv16__ao32, i_yxs_os_yxsv2_osv16, - os_i_yxs_osv4_yxsv4, os_i_osv16, ///< format used only for fully connected weights os_i_osv16__ai8, ///< format used only for fully connected weights os_i_osv8__ai8, ///< format used only for fully connected weights - os_y_is_x_osv8_isv2, - os_y_is_x_osv8_isv4, - os_y_is_x_osv16_isv4, - os_yx_is_osv8_isv2, - os_yx_is_osv8_isv4, - os_yx_is_osv16_isv2, - os_zyx_is_osv8_isv2, - os_zyx_is_osv8_isv4, - os_zy_is_x_osv8_isv2, - os_zy_is_x_osv8_isv4, - os_is_yx_osv4_isv16, - os_is_yx_osv4_isv2, - os_is_yx_osv8_isv16, - os_is_yx_osv2_isv4, - os_is_yx_osv2_isv16, - os_is_yx_osv2_isv32, goiyx, ///< format used for weights for 2D convolution gioyx, ///< format used for weights for 2D deconvolution @@ -256,25 +204,16 @@ struct format { g_os_iyx_osv8, ///< format used for weights for 2D convolution g_os_iyx_osv16, ///< format used for weights for 2D convolution g_os_iyx_osv32, ///< format used for weights for 2D convolution - gs_oiyx_gsv8, ///< format used for weights for 2D convolution gs_oiyx_gsv16, ///< format used for weights for 2D convolution - gs_oizyx_gsv8, ///< format used for weights for 3D convolution gs_oizyx_gsv16, ///< format used for weights for 3D convolution gs_oiyx_gsv32, ///< format used for weights for 2D convolution - gs_oizyx_gsv32, ///< format used for weights for 3D convolution g_is_os_zyx_isv16_osv16, ///< format used for grouped weights for blocked 3D deconvolution g_os_is_yx_osv16_isv4, g_os_is_zyx_osv16_isv16, g_is_os_yx_isv16_osv16, - g_os_is_yx_isa8_osv8_isv2, - g_os_is_yx_isa8_osv8_isv4, g_os_is_zyx_isv8_osv16_isv2, g_os_is_yx_isv8_osv16_isv2, g_os_is_zyx_isv16_osv16, - g_os_zy_is_x_osv8_isv2, - g_os_zy_is_x_osv8_isv4, - g_os_zyx_is_osv8_isv2, - g_os_zyx_is_osv8_isv4, g_os_zyx_is_osv16_isv4, ///< format for imad deconvolution g_os_zyx_is_osv16_isv16, ///< format for imad deconvolution g_os_zyx_is_osv16_isv32, ///< format for imad deconvolution @@ -282,28 +221,12 @@ struct format { g_os_zyx_is_osv32_isv16, ///< format for imad deconvolution g_os_zyx_is_osv32_isv32, ///< format for imad deconvolution g_os_is_yx_isv16_osv16, - g_os_is_yx_osv8_isv2, - g_os_is_yx_osv8_isv4, gs_oi_yxs_gsv4_yxsv4, gs_oi_yxs_gsv16_yxsv4, gs_oi_yxs_gsv32_yxsv4, gi_yxs_os_yxsv2_osv16, giy_xs_os_xsv2_osv8__ao32, giy_xs_os_xsv2_osv16__ao32, - g_os_is_yx_osa2_isa8_osv8_isv2, - g_os_is_yx_osa4_isa8_osv8_isv4, - g_os_is_yx_osa4_isa8_osv8_isv2, - g_os_is_yx_osa2_isa8_osv16_isv2, - g_os_is_yx_osa2_isa8_osv16_isv4, - g_os_is_zyx_osa4_isa8_osv8_isv2, - g_os_is_zyx_osa4_isa8_osv8_isv4, - g_os_is_zyx_isa8_osv8_isv2, - g_os_is_zyx_isa8_osv8_isv4, - g_os_yx_is_osv8_isv2, - g_os_yx_is_osv8_isv4, - g_os_yx_is_osv16_isv2, - g_os_y_is_x_osv8_isv2, - g_os_y_is_x_osv8_isv4, format_num, ///< number of format types custom, ///< means that this format is created based on custom format traits and may have no corresponding label diff --git a/src/plugins/intel_gpu/include/intel_gpu/runtime/tensor.hpp b/src/plugins/intel_gpu/include/intel_gpu/runtime/tensor.hpp index 14b63dd76434dd..20c8bc8052f031 100644 --- a/src/plugins/intel_gpu/include/intel_gpu/runtime/tensor.hpp +++ b/src/plugins/intel_gpu/include/intel_gpu/runtime/tensor.hpp @@ -550,20 +550,6 @@ struct tensor { my_sizes[1] = align_to(my_sizes[1], 32); adjusted_coords[0] = align_to(adjusted_coords[0], 16); adjusted_coords[1] = align_to(adjusted_coords[1], 32); - } else if (fmt == cldnn::format::os_is_yx_isa8_osv8_isv4_swizzled_by_4 && !(is_aligned_to(my_sizes[0], 32)) && !(is_aligned_to(my_sizes[1], 32))) { - my_sizes[0] = align_to(my_sizes[0], 32); - my_sizes[1] = align_to(my_sizes[1], 32); - adjusted_coords[0] = align_to(adjusted_coords[0], 32); - adjusted_coords[1] = align_to(adjusted_coords[1], 32); - } else if (fmt == cldnn::format::is_o32_yx_isv32_swizzled_by_4 && (!is_aligned_to(my_sizes[1], 32) || !is_aligned_to(my_sizes[0], 32))) { - my_sizes[0] = align_to(my_sizes[0], 32); - my_sizes[3] = align_to(my_sizes[3], 32); - adjusted_coords[0] = align_to(adjusted_coords[0], 32); - adjusted_coords[3] = align_to(adjusted_coords[3], 32); - } else if (fmt == cldnn::format::os_is_y_x8_osv8_isv4 || fmt == cldnn::format::os_is_yx_isa8_osv8_isv4_swizzled_by_4) { - my_sizes[1] = align_to(my_sizes[1], 4); - my_sizes[0] = align_to(my_sizes[0], 8); - my_sizes[2] = align_to(my_sizes[2], 8); } else if (fmt == cldnn::format::gs_oi_yxs_gsv4_yxsv4 || fmt == cldnn::format::gs_oi_yxs_gsv16_yxsv4 || fmt == cldnn::format::gs_oi_yxs_gsv32_yxsv4) { const auto yxsv = 4; const auto flat_xy = adjusted_coords[4] + adjusted_coords[3] * my_sizes[4]; @@ -590,17 +576,6 @@ struct tensor { adjusted_coords.insert(std::prev(adjusted_coords.end()), flat_xy % yxsv); adjusted_coords[2] = flat_xy / yxsv; adjusted_coords[1] = 0; - } else if (fmt == cldnn::format::os_i_yxs_osv4_yxsv4) { - const auto yxsv = 4; - const auto flat_xy = adjusted_coords[3] + adjusted_coords[2] * my_sizes[3]; - - my_sizes.push_back(yxsv); - my_sizes[3] = ceil_div(my_sizes[2] * my_sizes[3], yxsv); - my_sizes[2] = 1; - - adjusted_coords.push_back(flat_xy % yxsv); - adjusted_coords[3] = flat_xy / yxsv; - adjusted_coords[2] = 0; } else if ((fmt == cldnn::format::giy_xs_os_xsv2_osv8__ao32 || fmt == cldnn::format::giy_xs_os_xsv2_osv16__ao32) && !is_aligned_to(my_sizes[3], 32)) { my_sizes[4] = align_to(my_sizes[4], 32); } diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/kernel_selector_helper.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/kernel_selector_helper.cpp index e6cd614b49e569..3d109a69535ddf 100644 --- a/src/plugins/intel_gpu/src/graph/impls/ocl/kernel_selector_helper.cpp +++ b/src/plugins/intel_gpu/src/graph/impls/ocl/kernel_selector_helper.cpp @@ -424,20 +424,12 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { case format::yxfb: case format::yxio: return kernel_selector::weights_layout::yxio; - case format::os_yxi_osv16: - return kernel_selector::weights_layout::os_yxi_osv16; - case format::o_is_yx_isv2: - return kernel_selector::weights_layout::o_is_yx_isv2; case format::o_is_yx_isv4: return kernel_selector::weights_layout::o_is_yx_isv4; case format::o_is_yx_isv16: return kernel_selector::weights_layout::o_is_yx_isv16; - case format::o_is_zyx_isv16: - return kernel_selector::weights_layout::o_is_zyx_isv16; case format::os_iyx_osv16: return kernel_selector::weights_layout::os_iyx_osv16; - case format::os_is_yx_osv16_isv2: - return kernel_selector::weights_layout::os_is_yx_osv16_isv2; case format::os_is_yx_osv16_isv16: return kernel_selector::weights_layout::os_is_yx_osv16_isv16; case format::os_iyx_osv32: @@ -460,30 +452,8 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::image_2d_weights_winograd_6x3_s1_fbxyb; case format::image_2d_weights_winograd_6x3_s1_xfbyb: return kernel_selector::weights_layout::image_2d_weights_winograd_6x3_s1_xfbyb; - case format::os_is_yx_osa4_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_yx_osa4_isa8_osv8_isv2; - case format::os_is_zyx_osa4_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv2; case format::os_is_zyx_osa4_isa8_osv8_isv4: return kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv4; - case format::g_os_is_yx_isa8_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_yx_isa8_osv8_isv2; - case format::g_os_is_yx_isa8_osv8_isv4: - return kernel_selector::weights_layout::g_os_is_yx_isa8_osv8_isv4; - case format::g_os_is_yx_osa2_isa8_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv8_isv2; - case format::g_os_is_yx_osa4_isa8_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_yx_osa4_isa8_osv8_isv2; - case format::g_os_is_yx_osa4_isa8_osv8_isv4: - return kernel_selector::weights_layout::g_os_is_yx_osa4_isa8_osv8_isv4; - case format::g_os_is_zyx_osa4_isa8_osv8_isv4: - return kernel_selector::weights_layout::g_os_is_zyx_osa4_isa8_osv8_isv4; - case format::g_os_is_zyx_osa4_isa8_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_zyx_osa4_isa8_osv8_isv2; - case format::g_os_is_yx_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_yx_osv8_isv2; - case format::g_os_is_yx_osv8_isv4: - return kernel_selector::weights_layout::g_os_is_yx_osv8_isv4; case format::os_is_yx_osa4_isa8_osv8_isv4: return kernel_selector::weights_layout::os_is_yx_osa4_isa8_osv8_isv4; case format::os_is_yx_isa8_osv8_isv4: @@ -494,38 +464,12 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::os_is_zyx_isa8_osv8_isv4; case format::os_is_zyx_isa8_osv16_isv4: return kernel_selector::weights_layout::os_is_zyx_isa8_osv16_isv4; - case format::os_is_yx_osv8_isv2: - return kernel_selector::weights_layout::os_is_yx_osv8_isv2; - case format::os_is_zyx_osv8_isv2: - return kernel_selector::weights_layout::os_is_zyx_osv8_isv2; case format::os_is_yx_osv8_isv4: return kernel_selector::weights_layout::os_is_yx_osv8_isv4; - case format::os_is_yx_osv4_isv16: - return kernel_selector::weights_layout::os_is_yx_osv4_isv16; - case format::os_is_yx_osv8_isv16: - return kernel_selector::weights_layout::os_is_yx_osv8_isv16; - case format::os_is_yx_osv4_isv2: - return kernel_selector::weights_layout::os_is_yx_osv4_isv2; - case format::os_is_yx_osv2_isv4: - return kernel_selector::weights_layout::os_is_yx_osv2_isv4; - case format::os_is_yx_osv2_isv16: - return kernel_selector::weights_layout::os_is_yx_osv2_isv16; - case format::os_is_yx_osv2_isv32: - return kernel_selector::weights_layout::os_is_yx_osv2_isv32; - case format::os_is_zyx_osv8_isv4: - return kernel_selector::weights_layout::os_is_zyx_osv8_isv4; case format::os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4: return kernel_selector::weights_layout::os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4; case format::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4: return kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4; - case format::os_is_yx_isa8_osv8_isv4_swizzled_by_4: - return kernel_selector::weights_layout::os_is_yx_isa8_osv8_isv4_swizzled_by_4; - case format::is_o_yx_isv32: - return kernel_selector::weights_layout::is_o_yx_isv32; - case format::is_o32_yx_isv32_swizzled_by_4: - return kernel_selector::weights_layout::is_o32_yx_isv32_swizzled_by_4; - case format::os_is_y_x8_osv8_isv4: - return kernel_selector::weights_layout::os_is_y_x8_osv8_isv4; case format::os_is_yx_osv16_isv4: return kernel_selector::weights_layout::os_is_yx_osv16_isv4; case format::os_is_yx_osv32_isv4_swizzled_by_2: @@ -536,8 +480,6 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::os_is_zyx_osv32_isv4; case format::os_is_yx_isv16_osv16: return kernel_selector::weights_layout::os_is_yx_isv16_osv16; - case format::os_is_y_x8_osv8_isv4_swizzled_by_4: - return kernel_selector::weights_layout::os_is_y_x8_osv8_isv4_swizzled_by_4; case format::bfzyx: return is_grouped ? kernel_selector::weights_layout::goiyx : kernel_selector::weights_layout::oizyx; case format::bfwzyx: { @@ -562,30 +504,14 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::is_os_zyx_isv16_osv16; case format::os_is_zyx_osv32_isv16: return kernel_selector::weights_layout::os_is_zyx_osv32_isv16; - case format::is_os_yx_osv8_isv4: - return kernel_selector::weights_layout::is_os_yx_osv8_isv4; case format::is_os_yx_isv16_osv16: return kernel_selector::weights_layout::is_os_yx_isv16_osv16; - case format::is_os_yx_isv16_osv8: - return kernel_selector::weights_layout::is_os_yx_isv16_osv8; - case format::is_os_yx_isv16_osv4: - return kernel_selector::weights_layout::is_os_yx_isv16_osv4; - case format::is_os_yx_isv16_osv2: - return kernel_selector::weights_layout::is_os_yx_isv16_osv2; case format::i_yxs_os_yxsv2_osv16: return kernel_selector::weights_layout::i_yxs_os_yxsv2_osv16; - case format::is_os_yx_osa4_isa8_osv8_isv4: - return kernel_selector::weights_layout::is_os_yx_osa4_isa8_osv8_isv4; case format::iy_xs_os_xsv2_osv8__ao32: return kernel_selector::weights_layout::iy_xs_os_xsv2_osv8__ao32; case format::iy_xs_os_xsv2_osv16__ao32: return kernel_selector::weights_layout::iy_xs_os_xsv2_osv16__ao32; - case format::os_is_osv32_isv32_swizzled_by_4: - return kernel_selector::weights_layout::os_is_osv32_isv32_swizzled_by_4; - case format::os_is_zyx_isa8_osv16_isv2: - return kernel_selector::weights_layout::os_is_zyx_isa8_osv16_isv2; - case format::os_is_yx_isa8_osv16_isv2: - return kernel_selector::weights_layout::os_is_yx_isa8_osv16_isv2; case format::os_is_zyx_isv8_osv16_isv2: return kernel_selector::weights_layout::os_is_zyx_isv8_osv16_isv2; case format::os_is_yx_isv8_osv16_isv2: @@ -608,10 +534,6 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::g_os_iyx_osv16; case format::g_os_iyx_osv32: return kernel_selector::weights_layout::g_os_iyx_osv32; - case format::gs_oiyx_gsv8: - return kernel_selector::weights_layout::gs_oiyx_gsv8; - case format::gs_oizyx_gsv8: - return kernel_selector::weights_layout::gs_oizyx_gsv8; case format::gs_oiyx_gsv16: return kernel_selector::weights_layout::gs_oiyx_gsv16; case format::gs_oizyx_gsv16: @@ -624,8 +546,6 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::gs_oi_yxs_gsv16_yxsv4; case format::gs_oi_yxs_gsv32_yxsv4: return kernel_selector::weights_layout::gs_oi_yxs_gsv32_yxsv4; - case format::gs_oizyx_gsv32: - return kernel_selector::weights_layout::gs_oizyx_gsv32; case format::gyxio: return kernel_selector::weights_layout::gyxio; case format::gi_yxs_os_yxsv2_osv16: @@ -636,10 +556,6 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::g_is_os_zyx_isv16_osv16; case format::g_is_os_yx_isv16_osv16: return kernel_selector::weights_layout::g_is_os_yx_isv16_osv16; - case cldnn::format::g_os_is_zyx_isa8_osv8_isv2: - return kernel_selector::weights_layout::g_os_is_zyx_isa8_osv8_isv2; - case cldnn::format::g_os_is_zyx_isa8_osv8_isv4: - return kernel_selector::weights_layout::g_os_is_zyx_isa8_osv8_isv4; case format::g_os_is_zyx_isv8_osv16_isv2: return kernel_selector::weights_layout::g_os_is_zyx_isv8_osv16_isv2; case format::g_os_is_yx_isv8_osv16_isv2: @@ -652,28 +568,8 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::os_is_zyx_osv16_isv16; case format::g_os_is_zyx_osv16_isv16: return kernel_selector::weights_layout::g_os_is_zyx_osv16_isv16; - case format::os_is_yx_osa2_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv8_isv2; - case format::os_is_zyx_osa2_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_zyx_osa2_isa8_osv8_isv2; - case format::os_is_yx_osa2_isa8_osv16_isv4: - return kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv16_isv4; - case format::g_os_is_yx_osa2_isa8_osv16_isv4: - return kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv16_isv4; - case format::os_is_yx_osa2_isa8_osv16_isv2: - return kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv16_isv2; - case format::g_os_is_yx_osa2_isa8_osv16_isv2: - return kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv16_isv2; case format::g_os_zyx_is_osv16_isv4: return kernel_selector::weights_layout::g_os_zyx_is_osv16_isv4; - case format::g_os_zy_is_x_osv8_isv2: - return kernel_selector::weights_layout::g_os_zy_is_x_osv8_isv2; - case format::g_os_zy_is_x_osv8_isv4: - return kernel_selector::weights_layout::g_os_zy_is_x_osv8_isv4; - case format::g_os_zyx_is_osv8_isv2: - return kernel_selector::weights_layout::g_os_zyx_is_osv8_isv2; - case format::g_os_zyx_is_osv8_isv4: - return kernel_selector::weights_layout::g_os_zyx_is_osv8_isv4; case format::g_os_zyx_is_osv16_isv16: return kernel_selector::weights_layout::g_os_zyx_is_osv16_isv16; case format::g_os_zyx_is_osv16_isv32: @@ -684,58 +580,8 @@ kernel_selector::weights_layout to_weights_layout(format f, bool is_grouped) { return kernel_selector::weights_layout::g_os_zyx_is_osv32_isv16; case format::g_os_zyx_is_osv32_isv32: return kernel_selector::weights_layout::g_os_zyx_is_osv32_isv32; - case format::os_is_zyx_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_zyx_isa8_osv8_isv2; - case format::is_os_zyx_isa8_osv8_isv2: - return kernel_selector::weights_layout::is_os_zyx_isa8_osv8_isv2; - case format::is_os_zyx_isa8_osv8_isv4: - return kernel_selector::weights_layout::is_os_zyx_isa8_osv8_isv4; - case format::os_is_yx_isa8_osv8_isv2: - return kernel_selector::weights_layout::os_is_yx_isa8_osv8_isv2; - case format::is_os_yx_isa8_osv8_isv2: - return kernel_selector::weights_layout::is_os_yx_isa8_osv8_isv2; - case format::is_os_yx_isa8_osv8_isv4: - return kernel_selector::weights_layout::is_os_yx_isa8_osv8_isv4; - case format::is_os_yx_osa8_isv16_osv4: - return kernel_selector::weights_layout::is_os_yx_osa8_isv16_osv4; - case format::is_os_yx_isa2_osa8_isv8_osv2: - return kernel_selector::weights_layout::is_os_yx_isa2_osa8_isv8_osv2; - case format::is_os_yx_isa4_osa8_isv8_osv4: - return kernel_selector::weights_layout::is_os_yx_isa4_osa8_isv8_osv4; - case format::os_y_is_x_osv8_isv2: - return kernel_selector::weights_layout::os_y_is_x_osv8_isv2; - case format::os_y_is_x_osv8_isv4: - return kernel_selector::weights_layout::os_y_is_x_osv8_isv4; - case format::os_y_is_x_osv16_isv4: - return kernel_selector::weights_layout::os_y_is_x_osv16_isv4; - case format::os_yx_is_osv8_isv2: - return kernel_selector::weights_layout::os_yx_is_osv8_isv2; - case format::os_yx_is_osv8_isv4: - return kernel_selector::weights_layout::os_yx_is_osv8_isv4; - case format::os_yx_is_osv16_isv2: - return kernel_selector::weights_layout::os_yx_is_osv16_isv2; - case format::os_zyx_is_osv8_isv2: - return kernel_selector::weights_layout::os_zyx_is_osv8_isv2; - case format::os_zyx_is_osv8_isv4: - return kernel_selector::weights_layout::os_zyx_is_osv8_isv4; - case format::os_zy_is_x_osv8_isv2: - return kernel_selector::weights_layout::os_zy_is_x_osv8_isv2; - case format::os_zy_is_x_osv8_isv4: - return kernel_selector::weights_layout::os_zy_is_x_osv8_isv4; - case format::g_os_yx_is_osv8_isv2: - return kernel_selector::weights_layout::g_os_yx_is_osv8_isv2; - case format::g_os_yx_is_osv8_isv4: - return kernel_selector::weights_layout::g_os_yx_is_osv8_isv4; - case format::g_os_yx_is_osv16_isv2: - return kernel_selector::weights_layout::g_os_yx_is_osv16_isv2; - case format::g_os_y_is_x_osv8_isv2: - return kernel_selector::weights_layout::g_os_y_is_x_osv8_isv2; - case format::g_os_y_is_x_osv8_isv4: - return kernel_selector::weights_layout::g_os_y_is_x_osv8_isv4; case format::g_os_is_yx_isv16_osv16: return kernel_selector::weights_layout::g_os_is_yx_isv16_osv16; - case format::os_i_yxs_osv4_yxsv4: - return kernel_selector::weights_layout::os_i_yxs_osv4_yxsv4; default: throw std::invalid_argument("Unable to convert tensor layout " + fmt_to_str(f) + " to weights layout"); } @@ -758,22 +604,14 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::iyxo; case kernel_selector::weights_layout::yxio: return cldnn::format::yxio; - case kernel_selector::weights_layout::os_yxi_osv16: - return cldnn::format::os_yxi_osv16; - case kernel_selector::weights_layout::o_is_yx_isv2: - return cldnn::format::o_is_yx_isv2; case kernel_selector::weights_layout::o_is_yx_isv4: return cldnn::format::o_is_yx_isv4; case kernel_selector::weights_layout::o_is_yx_isv16: return cldnn::format::o_is_yx_isv16; - case kernel_selector::weights_layout::o_is_zyx_isv16: - return cldnn::format::o_is_zyx_isv16; case kernel_selector::weights_layout::os_iyx_osv16: return cldnn::format::os_iyx_osv16; case kernel_selector::weights_layout::os_is_yx_isv16_osv16: return cldnn::format::os_is_yx_isv16_osv16; - case kernel_selector::weights_layout::os_is_yx_osv16_isv2: - return cldnn::format::os_is_yx_osv16_isv2; case kernel_selector::weights_layout::os_is_yx_osv16_isv16: return cldnn::format::os_is_yx_osv16_isv16; case kernel_selector::weights_layout::os_iyx_osv32: @@ -800,44 +638,10 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::image_2d_weights_winograd_6x3_s1_fbxyb; case kernel_selector::weights_layout::image_2d_weights_winograd_6x3_s1_xfbyb: return cldnn::format::image_2d_weights_winograd_6x3_s1_xfbyb; - case kernel_selector::weights_layout::os_is_yx_osa4_isa8_osv8_isv2: - return cldnn::format::os_is_yx_osa4_isa8_osv8_isv2; - case kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv2: - return cldnn::format::os_is_zyx_osa4_isa8_osv8_isv2; case kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv4: return cldnn::format::os_is_zyx_osa4_isa8_osv8_isv4; - case kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv8_isv2: - return cldnn::format::g_os_is_yx_osa2_isa8_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osa4_isa8_osv8_isv2: - return cldnn::format::g_os_is_yx_osa4_isa8_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osa4_isa8_osv8_isv4: - return cldnn::format::g_os_is_yx_osa4_isa8_osv8_isv4; - case kernel_selector::weights_layout::g_os_is_zyx_osa4_isa8_osv8_isv4: - return cldnn::format::g_os_is_zyx_osa4_isa8_osv8_isv4; - case kernel_selector::weights_layout::g_os_is_zyx_isa8_osv8_isv2: - return cldnn::format::g_os_is_zyx_isa8_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_zyx_isa8_osv8_isv4: - return cldnn::format::g_os_is_zyx_isa8_osv8_isv4; - case kernel_selector::weights_layout::g_os_is_zyx_osa4_isa8_osv8_isv2: - return cldnn::format::g_os_is_zyx_osa4_isa8_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osv8_isv2: - return cldnn::format::g_os_is_yx_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osv8_isv4: - return cldnn::format::g_os_is_yx_osv8_isv4; case kernel_selector::weights_layout::os_is_yx_osa4_isa8_osv8_isv4: return cldnn::format::os_is_yx_osa4_isa8_osv8_isv4; - case kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv8_isv2: - return cldnn::format::os_is_yx_osa2_isa8_osv8_isv2; - case kernel_selector::weights_layout::os_is_zyx_osa2_isa8_osv8_isv2: - return cldnn::format::os_is_zyx_osa2_isa8_osv8_isv2; - case kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv16_isv2: - return cldnn::format::os_is_yx_osa2_isa8_osv16_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv16_isv2: - return cldnn::format::g_os_is_yx_osa2_isa8_osv16_isv2; - case kernel_selector::weights_layout::g_os_is_yx_osa2_isa8_osv16_isv4: - return cldnn::format::g_os_is_yx_osa2_isa8_osv16_isv4; - case kernel_selector::weights_layout::os_is_yx_osa2_isa8_osv16_isv4: - return cldnn::format::os_is_yx_osa2_isa8_osv16_isv4; case kernel_selector::weights_layout::os_is_yx_isa8_osv8_isv4: return cldnn::format::os_is_yx_isa8_osv8_isv4; case kernel_selector::weights_layout::os_is_zyx_isa8_osv8_isv4: @@ -850,22 +654,12 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4; case kernel_selector::weights_layout::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4: return cldnn::format::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4; - case kernel_selector::weights_layout::os_is_yx_isa8_osv8_isv4_swizzled_by_4: - return cldnn::format::os_is_yx_isa8_osv8_isv4_swizzled_by_4; - case kernel_selector::weights_layout::is_o_yx_isv32: - return cldnn::format::is_o_yx_isv32; - case kernel_selector::weights_layout::is_o32_yx_isv32_swizzled_by_4: - return cldnn::format::is_o32_yx_isv32_swizzled_by_4; - case kernel_selector::weights_layout::os_is_y_x8_osv8_isv4: - return cldnn::format::os_is_y_x8_osv8_isv4; case kernel_selector::weights_layout::os_is_yx_osv32_isv4_swizzled_by_2: return format::os_is_yx_osv32_isv4_swizzled_by_2; case kernel_selector::weights_layout::os_is_yx_osv32_isv4: return format::os_is_yx_osv32_isv4; case kernel_selector::weights_layout::os_is_zyx_osv32_isv4: return format::os_is_zyx_osv32_isv4; - case kernel_selector::weights_layout::os_is_y_x8_osv8_isv4_swizzled_by_4: - return cldnn::format::os_is_y_x8_osv8_isv4_swizzled_by_4; case kernel_selector::weights_layout::oizyx: return cldnn::format::oizyx; case kernel_selector::weights_layout::iozyx: @@ -874,60 +668,10 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::os_is_zyx_isv16_osv16; case kernel_selector::weights_layout::is_os_zyx_isv16_osv16: return cldnn::format::is_os_zyx_isv16_osv16; - case kernel_selector::weights_layout::is_os_yx_osv8_isv4: - return cldnn::format::is_os_yx_osv8_isv4; case kernel_selector::weights_layout::is_os_yx_isv16_osv16: return cldnn::format::is_os_yx_isv16_osv16; - case kernel_selector::weights_layout::is_os_yx_isv16_osv8: - return cldnn::format::is_os_yx_isv16_osv8; - case kernel_selector::weights_layout::is_os_yx_isv16_osv4: - return cldnn::format::is_os_yx_isv16_osv4; - case kernel_selector::weights_layout::is_os_yx_isv16_osv2: - return cldnn::format::is_os_yx_isv16_osv2; - case kernel_selector::weights_layout::is_os_zyx_isa8_osv8_isv2: - return cldnn::format::is_os_zyx_isa8_osv8_isv2; - case kernel_selector::weights_layout::is_os_zyx_isa8_osv8_isv4: - return cldnn::format::is_os_zyx_isa8_osv8_isv4; - case kernel_selector::weights_layout::os_is_zyx_isa8_osv8_isv2: - return cldnn::format::os_is_zyx_isa8_osv8_isv2; - case kernel_selector::weights_layout::is_os_yx_isa8_osv8_isv2: - return cldnn::format::is_os_yx_isa8_osv8_isv2; - case kernel_selector::weights_layout::is_os_yx_isa8_osv8_isv4: - return cldnn::format::is_os_yx_isa8_osv8_isv4; - case kernel_selector::weights_layout::is_os_yx_osa8_isv16_osv4: - return cldnn::format::is_os_yx_osa8_isv16_osv4; - case kernel_selector::weights_layout::os_is_yx_isa8_osv8_isv2: - return cldnn::format::os_is_yx_isa8_osv8_isv2; - case kernel_selector::weights_layout::is_os_yx_osa4_isa8_osv8_isv4: - return cldnn::format::is_os_yx_osa4_isa8_osv8_isv4; - case kernel_selector::weights_layout::is_os_yx_isa2_osa8_isv8_osv2: - return cldnn::format::is_os_yx_isa2_osa8_isv8_osv2; - case kernel_selector::weights_layout::is_os_yx_isa4_osa8_isv8_osv4: - return cldnn::format::is_os_yx_isa4_osa8_isv8_osv4; - case kernel_selector::weights_layout::os_is_yx_osv8_isv2: - return cldnn::format::os_is_yx_osv8_isv2; - case kernel_selector::weights_layout::os_is_zyx_osv8_isv2: - return cldnn::format::os_is_zyx_osv8_isv2; case kernel_selector::weights_layout::os_is_yx_osv8_isv4: return cldnn::format::os_is_yx_osv8_isv4; - case kernel_selector::weights_layout::os_is_yx_osv4_isv16: - return cldnn::format::os_is_yx_osv4_isv16; - case kernel_selector::weights_layout::os_is_yx_osv8_isv16: - return cldnn::format::os_is_yx_osv8_isv16; - case kernel_selector::weights_layout::os_is_yx_osv4_isv2: - return cldnn::format::os_is_yx_osv4_isv2; - case kernel_selector::weights_layout::os_is_yx_osv2_isv4: - return cldnn::format::os_is_yx_osv2_isv4; - case kernel_selector::weights_layout::os_is_yx_osv2_isv16: - return cldnn::format::os_is_yx_osv2_isv16; - case kernel_selector::weights_layout::os_is_yx_osv2_isv32: - return cldnn::format::os_is_yx_osv2_isv32; - case kernel_selector::weights_layout::os_is_zyx_osv8_isv4: - return cldnn::format::os_is_zyx_osv8_isv4; - case kernel_selector::weights_layout::os_is_zyx_isa8_osv16_isv2: - return cldnn::format::os_is_zyx_isa8_osv16_isv2; - case kernel_selector::weights_layout::os_is_yx_isa8_osv16_isv2: - return cldnn::format::os_is_yx_isa8_osv16_isv2; case kernel_selector::weights_layout::os_is_zyx_isv8_osv16_isv2: return cldnn::format::os_is_zyx_isv8_osv16_isv2; case kernel_selector::weights_layout::os_zyxi_osv16: @@ -942,28 +686,18 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::g_os_iyx_osv16; case kernel_selector::weights_layout::g_os_iyx_osv32: return cldnn::format::g_os_iyx_osv32; - case kernel_selector::weights_layout::gs_oiyx_gsv8: - return cldnn::format::gs_oiyx_gsv8; - case kernel_selector::weights_layout::gs_oizyx_gsv8: - return cldnn::format::gs_oizyx_gsv8; case kernel_selector::weights_layout::gs_oiyx_gsv16: return cldnn::format::gs_oiyx_gsv16; case kernel_selector::weights_layout::gs_oizyx_gsv16: return cldnn::format::gs_oizyx_gsv16; case kernel_selector::weights_layout::gs_oiyx_gsv32: return cldnn::format::gs_oiyx_gsv32; - case kernel_selector::weights_layout::gs_oizyx_gsv32: - return cldnn::format::gs_oizyx_gsv32; case kernel_selector::weights_layout::gyxio: return cldnn::format::gyxio; case kernel_selector::weights_layout::g_is_os_zyx_isv16_osv16: return cldnn::format::g_is_os_zyx_isv16_osv16; case kernel_selector::weights_layout::g_is_os_yx_isv16_osv16: return cldnn::format::g_is_os_yx_isv16_osv16; - case kernel_selector::weights_layout::g_os_is_yx_isa8_osv8_isv2: - return cldnn::format::g_os_is_yx_isa8_osv8_isv2; - case kernel_selector::weights_layout::g_os_is_yx_isa8_osv8_isv4: - return cldnn::format::g_os_is_yx_isa8_osv8_isv4; case kernel_selector::weights_layout::g_os_is_zyx_isv8_osv16_isv2: return cldnn::format::g_os_is_zyx_isv8_osv16_isv2; case kernel_selector::weights_layout::g_os_is_yx_isv8_osv16_isv2: @@ -978,14 +712,6 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::g_os_is_zyx_osv16_isv16; case kernel_selector::weights_layout::g_os_zyx_is_osv16_isv4: return cldnn::format::g_os_zyx_is_osv16_isv4; - case kernel_selector::weights_layout::g_os_zy_is_x_osv8_isv2: - return cldnn::format::g_os_zy_is_x_osv8_isv2; - case kernel_selector::weights_layout::g_os_zy_is_x_osv8_isv4: - return cldnn::format::g_os_zy_is_x_osv8_isv4; - case kernel_selector::weights_layout::g_os_zyx_is_osv8_isv2: - return cldnn::format::g_os_zyx_is_osv8_isv2; - case kernel_selector::weights_layout::g_os_zyx_is_osv8_isv4: - return cldnn::format::g_os_zyx_is_osv8_isv4; case kernel_selector::weights_layout::g_os_zyx_is_osv16_isv16: return cldnn::format::g_os_zyx_is_osv16_isv16; case kernel_selector::weights_layout::g_os_zyx_is_osv16_isv32: @@ -1010,8 +736,6 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::os_iyx_osv8; case kernel_selector::weights_layout::os_iyx_osv32__ai32: return cldnn::format::os_iyx_osv32__ai32; - case kernel_selector::weights_layout::os_is_osv32_isv32_swizzled_by_4: - return cldnn::format::os_is_osv32_isv32_swizzled_by_4; case kernel_selector::weights_layout::iy_xs_os_xsv2_osv16__ao32: return cldnn::format::iy_xs_os_xsv2_osv16__ao32; case kernel_selector::weights_layout::iy_xs_os_xsv2_osv8__ao32: @@ -1026,8 +750,6 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::os_is_yx_isv8_osv16_isv2; case kernel_selector::weights_layout::os_iyx_osv16_rotate_180: return cldnn::format::os_iyx_osv16; - case kernel_selector::weights_layout::os_i_yxs_osv4_yxsv4: - return cldnn::format::os_i_yxs_osv4_yxsv4; case kernel_selector::weights_layout::gi_yxs_os_yxsv2_osv16: return cldnn::format::gi_yxs_os_yxsv2_osv16; case kernel_selector::weights_layout::giy_xs_os_xsv2_osv8__ao32: @@ -1036,36 +758,6 @@ cldnn::format::type from_weights_layout(kernel_selector::weights_layout l) { return cldnn::format::giy_xs_os_xsv2_osv16__ao32; case kernel_selector::weights_layout::ioyx: return cldnn::format::ioyx; - case kernel_selector::weights_layout::os_y_is_x_osv8_isv2: - return cldnn::format::os_y_is_x_osv8_isv2; - case kernel_selector::weights_layout::os_y_is_x_osv8_isv4: - return cldnn::format::os_y_is_x_osv8_isv4; - case kernel_selector::weights_layout::os_y_is_x_osv16_isv4: - return cldnn::format::os_y_is_x_osv16_isv4; - case kernel_selector::weights_layout::os_yx_is_osv8_isv2: - return cldnn::format::os_yx_is_osv8_isv2; - case kernel_selector::weights_layout::os_yx_is_osv8_isv4: - return cldnn::format::os_yx_is_osv8_isv4; - case kernel_selector::weights_layout::os_yx_is_osv16_isv2: - return cldnn::format::os_yx_is_osv16_isv2; - case kernel_selector::weights_layout::os_zyx_is_osv8_isv2: - return cldnn::format::os_zyx_is_osv8_isv2; - case kernel_selector::weights_layout::os_zyx_is_osv8_isv4: - return cldnn::format::os_zyx_is_osv8_isv4; - case kernel_selector::weights_layout::os_zy_is_x_osv8_isv2: - return cldnn::format::os_zy_is_x_osv8_isv2; - case kernel_selector::weights_layout::os_zy_is_x_osv8_isv4: - return cldnn::format::os_zy_is_x_osv8_isv4; - case kernel_selector::weights_layout::g_os_yx_is_osv8_isv2: - return cldnn::format::g_os_yx_is_osv8_isv2; - case kernel_selector::weights_layout::g_os_yx_is_osv8_isv4: - return cldnn::format::g_os_yx_is_osv8_isv4; - case kernel_selector::weights_layout::g_os_yx_is_osv16_isv2: - return cldnn::format::g_os_yx_is_osv16_isv2; - case kernel_selector::weights_layout::g_os_y_is_x_osv8_isv2: - return cldnn::format::g_os_y_is_x_osv8_isv2; - case kernel_selector::weights_layout::g_os_y_is_x_osv8_isv4: - return cldnn::format::g_os_y_is_x_osv8_isv4; case kernel_selector::weights_layout::giozyx: return cldnn::format::giozyx; default: diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/utils.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/utils.cpp index 1db2b3208f0df3..38e8a5097bb666 100644 --- a/src/plugins/intel_gpu/src/graph/impls/onednn/utils.cpp +++ b/src/plugins/intel_gpu/src/graph/impls/onednn/utils.cpp @@ -123,11 +123,9 @@ std::vector> format_map = { { cldnn::format::goizyx, dnnl::memory::format_tag::goidhw }, { cldnn::format::os_iyx_osv16, dnnl::memory::format_tag::Oihw16o }, - { cldnn::format::gs_oiyx_gsv8, dnnl::memory::format_tag::Goihw8g }, { cldnn::format::gs_oiyx_gsv16, dnnl::memory::format_tag::Goihw16g }, { cldnn::format::gs_oiyx_gsv32, dnnl::memory::format_tag::Goihw32g }, { cldnn::format::gs_oizyx_gsv16, dnnl::memory::format_tag::Goidhw16g }, - { cldnn::format::gs_oizyx_gsv32, dnnl::memory::format_tag::Goidhw32g }, { cldnn::format::g_os_iyx_osv16, dnnl::memory::format_tag::gOihw16o }, { cldnn::format::os_is_yx_osv16_isv16, dnnl::memory::format_tag::OIhw16o16i }, diff --git a/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/include/batch_headers/fetch_weights.cl b/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/include/batch_headers/fetch_weights.cl index d1b6ef98e1774e..2e31a739d1cedc 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/include/batch_headers/fetch_weights.cl +++ b/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/include/batch_headers/fetch_weights.cl @@ -75,17 +75,6 @@ ((i) / (sub_group_size))*CAT(prefix, _IFM_PITCH) \ ) -#define GET_FILTER_IS_OS_YX_ISV16_OSV8_INDEX(prefix, o, i, y, x, sub_group_size) \ - CAT(prefix, _OFFSET) + \ - ((o) % (sub_group_size)) + \ - (sub_group_size)*( \ - (x)*(sub_group_size)*CAT(prefix, _X_PITCH) + \ - (y)*(sub_group_size)*CAT(prefix, _Y_PITCH) + \ - ((i) % (sub_group_size)) + \ - ((o) / (sub_group_size))*(sub_group_size)*CAT(prefix, _OFM_PITCH) + \ - ((i) / (sub_group_size))*CAT(prefix, _IFM_PITCH) \ - ) - #define GET_FILTER_OS_IS_YX_ISV8_OSV16_ISV2_INDEX(prefix, o, i, y, x, sub_group_size) \ get_os_is_zyx_isv8_osv16_isv2_index( \ 0, o, i, 0, y, x, \ @@ -227,17 +216,6 @@ inline uint get_g_os_is_zyx_osv_isv_index(uint g, uint o, uint i, uint z, uint y 16, \ 16) -#define GET_FILTER_OS_IS_YX_OSV16_ISV2_INDEX(prefix, o, i, y, x) \ - get_os_is_zyx_osv_isv_index( \ - o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - 16, \ - 2) - #define GET_FILTER_OS_IS_YX_OSV16_ISV16_INDEX(prefix, o, i, y, x) \ get_os_is_zyx_osv_isv_index( \ o, i, 0, y, x, \ @@ -326,53 +304,6 @@ inline uint get_os_is_zyx_isv8_osv16_isv2_index(uint g, uint o, uint i, uint z, return idx; } -#define GET_FILTER_OS_IS_YX_ISA8_OSV16_ISV2_INDEX(prefix, o, i, y, x) \ - get_os_is_zyx_isa8_osv16_isv2_index( \ - o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET) \ - ) - -#define GET_FILTER_OS_IS_ZYX_ISA8_OSV16_ISV2_INDEX(prefix, o, i, z, y, x) \ - get_os_is_zyx_isa8_osv16_isv2_index( \ - o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET) \ - ) - -inline uint get_os_is_zyx_isa8_osv16_isv2_index(uint o, uint i, uint z, uint y, uint x, uint size_x, - uint size_y, uint size_z, uint size_ifm, uint size_ofm, uint offset) -{ - const uint isv2_idx = i % 2; - const uint osv_idx = o % 16; - const uint isv1_idx = (i / 2) % 8; - const uint is_idx = i / 16; - const uint os_idx = o / 16; - - const uint if_16_aligned = ((size_ifm + 15) / 16); - const uint of_16_aligned = ((size_ofm + 15) / 16); - - size_t idx = offset + - isv2_idx + - osv_idx * 2 + - isv1_idx * 16 * 2 + - x * 8 * 16 * 2 + - y * size_x * 8 * 16 * 2 + - z * size_y * size_x * 8 * 16 * 2 + - is_idx * size_z * size_y * size_x * 2 * 16 * 8 + - os_idx * if_16_aligned * size_z * size_y * size_x * 2 * 16 * 8; - - return idx; -} - inline uint get_os_zyxi_osv16_index(uint o, uint i, uint z, uint y, uint x, uint i_size, uint o_size, uint x_size, uint y_size, uint z_size) { const size_t idx = o%16 + (o / 16)*i_size*x_size*y_size*z_size*16 + @@ -589,30 +520,6 @@ inline uint get_is_os_zyx_isa8_osv8_isv2_index(uint o, uint i, uint z, uint y, u return idx; } -inline uint get_is_os_zyx_isa8_osv8_isv4_index(uint o, uint i, uint z, uint y, uint x, uint size_x, - uint size_y, uint size_z, uint size_ifm, uint size_ofm, uint offset) -{ - const uint isv2_idx = i % 4; - const uint osv_idx = o % 8; - const uint isv1_idx = (i / 4) % 8; - const uint is_idx = i / 32; - const uint os_idx = o / 8; - - const uint of_8_aligned = ((size_ofm + 7) / 8); - - size_t idx = offset + - isv2_idx + - osv_idx * 4 + - isv1_idx * 8 * 4 + - x * 8 * 8 * 4 + - y * size_x * 8 * 8 * 4 + - z * size_y * size_x * 8 * 8 * 4 + - os_idx * size_z * size_y * size_x * 8 * 8 * 4 + - is_idx * of_8_aligned * size_z * size_y * size_x * 8 * 8 * 4; - - return idx; -} - inline uint get_g_os_is_zyx_isa_osv_isv_index(uint g, uint o, uint i, uint z, uint y, uint x, uint size_x, uint size_y, uint size_z, uint size_ifm, uint size_ofm, uint offset, uint isa, uint osv, uint isv) @@ -651,30 +558,6 @@ inline uint get_g_os_is_zyx_isa_osv_isv_index(uint g, uint o, uint i, uint z, ui CAT(prefix, _OFFSET), \ isa, osv, isv) -#define GET_FILTER_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(prefix, o, i, z, y, x) GET_FILTER_G_OS_IS_ZYX_ISA_OSV_ISV_INDEX(prefix, 0, o, i, z, y, x, 8, 8, 2) -#define GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(prefix, g, o, i, z, y, x) GET_FILTER_G_OS_IS_ZYX_ISA_OSV_ISV_INDEX(prefix, g, o, i, z, y, x, 8, 8, 2) -#define GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV4_INDEX(prefix, g, o, i, z, y, x) GET_FILTER_G_OS_IS_ZYX_ISA_OSV_ISV_INDEX(prefix, g, o, i, z, y, x, 8, 8, 4) - -#define GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV2_INDEX(prefix, o, i, z, y, x) \ - get_is_os_zyx_isa8_osv8_isv2_index( \ - o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV4_INDEX(prefix, o, i, z, y, x) \ - get_is_os_zyx_isa8_osv8_isv4_index( \ - o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - inline uint get_g_os_is_yx_isa8_osv8_isv4_index(uint g, uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) { @@ -700,14 +583,6 @@ inline uint get_g_os_is_yx_isa8_osv8_isv4_index(uint g, uint o, uint i, uint y, return idx; } -#define GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV4_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_isa8_osv8_isv4_index( \ - g, o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - #define GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV4_INDEX(prefix, o, i, y, x) \ get_g_os_is_yx_isa8_osv8_isv4_index( \ 0, o, i, y, x, CAT(prefix, _SIZE_X ), \ @@ -716,47 +591,6 @@ inline uint get_g_os_is_yx_isa8_osv8_isv4_index(uint g, uint o, uint i, uint y, CAT(prefix, _OFM_NUM), \ CAT(prefix, _OFFSET)) -inline uint get_g_os_is_yx_isa8_osv8_isv2_index(uint g, uint o, uint i, uint y, uint x, uint size_x, - uint size_y, uint size_ifm, uint size_ofm, uint offset) -{ - const uint isv2_idx = i % 2; - const uint osv_idx = o % 8; - const uint isv1_idx = (i / 2) % 8; - const uint is_idx = i / 16; - const uint os_idx = o / 8; - - const uint if_16_aligned = ((size_ifm + 15) / 16); - const uint of_8_aligned = ((size_ofm + 7) / 8); - - size_t idx = offset + - isv2_idx + - osv_idx * 2 + - isv1_idx * 8 * 2 + - x * 8 * 8 * 2 + - y * size_x * 8 * 8 * 2 + - is_idx * size_y * size_x * 2 * 8 * 8 + - os_idx * if_16_aligned * size_y * size_x * 2 * 8 * 8 + - g * of_8_aligned * if_16_aligned * size_y * size_x * 2 * 8 * 8; - - return idx; -} - -#define GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_isa8_osv8_isv2_index( \ - g, o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_isa8_osv8_isv2_index( \ - 0, o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - inline uint get_is_os_yx_isa8_osv8_isv2_index(uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) { @@ -780,14 +614,6 @@ inline uint get_is_os_yx_isa8_osv8_isv2_index(uint o, uint i, uint y, uint x, ui return idx; } -#define GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV2_INDEX(prefix, o, i, y, x) \ - get_is_os_yx_isa8_osv8_isv2_index( \ - o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - inline uint get_is_os_yx_isa8_osv8_isv4_index(uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) { @@ -811,14 +637,6 @@ inline uint get_is_os_yx_isa8_osv8_isv4_index(uint o, uint i, uint y, uint x, ui return idx; } -#define GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV4_INDEX(prefix, o, i, y, x) \ - get_is_os_yx_isa8_osv8_isv4_index( \ - o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - inline uint get_is_os_yx_osa8_isv16_osv4_index(uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) { @@ -842,14 +660,6 @@ inline uint get_is_os_yx_osa8_isv16_osv4_index(uint o, uint i, uint y, uint x, u return idx; } -#define GET_FILTER_IS_OS_YX_OSA8_ISV16_OSV4_INDEX(prefix, o, i, y, x) \ - get_is_os_yx_osa8_isv16_osv4_index( \ - o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - inline uint get_os_is_zyx_isa8_osv8_isv4_index(uint o, uint i, uint z, uint y, uint x, uint size_x, uint size_y, uint size_z, uint size_ifm, uint size_ofm, uint offset) @@ -939,26 +749,6 @@ inline uint get_os_is_zyx_isa8_osv16_isv4_index(uint o, uint i, uint z, uint y, CAT(prefix, _OFM_NUM), \ CAT(prefix, _OFFSET)) -inline uint get_os_is_yx_isa8_osv8_isv4_swizzled_by_4_index(uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) -{ - const uint o_swizzled = (o % 4) * 8 + ((o % 32) / 4) + (o / 32) * 32; - - const uint f_32_aligned = ((size_ifm + 31)/32) * 32; - const uint isv2_idx = i % 4; - const uint osv_idx = o_swizzled % 8; - const uint isv1_idx = (i / 4) % 8; - const uint is_idx = i / 32; - const uint os_idx = o_swizzled / 8; - - size_t idx = offset + isv2_idx + 4 * (osv_idx + 8 * isv1_idx); - idx += x * 4 * 8 * 8; - idx += y * size_x * 4 * 8 * 8; - idx += is_idx * size_y * size_x * 4 * 8 * 8; - idx += os_idx * (f_32_aligned/32) * size_y * size_x * 4 * 8 * 8; - - return idx; -} - inline uint get_os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4_index(uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) { const uint o_swizzled = (o % 4) * 8 + ((o % 32) / 4) + (o / 32) * 32; @@ -1124,58 +914,6 @@ inline uint get_g_os_is_yx_osa2_isa8_osv8_isv2(uint g, uint o, uint i, uint z, u return idx; } -inline uint get_g_os_is_yx_osa2_isa8_osv16_isv4(uint g, uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) -{ - const uint isv_idx = i % 4; - const uint isa_idx = (i / 4) % 8; - const uint is_idx = (i / 32); - const uint osv_idx = o % 16; - const uint osa_idx = (o / 16) % 2; - const uint os_idx = (o / 32); - - const uint ifm_32_aligned = ((size_ifm + 31)/32); - const uint ofm_32_aligned = ((size_ofm + 31)/32); - - size_t idx = offset + - isv_idx + - osv_idx * 4 + - isa_idx * 16 * 4 + - osa_idx * 8 * 64 + - x * 32 * 32 + - y * size_x * 32 * 32 + - is_idx * 32 * 32 * size_x * size_y + - os_idx * 32 * 32 * ifm_32_aligned * size_x * size_y + - g * 32 * 32 * ifm_32_aligned * ofm_32_aligned * size_x * size_y; - - return idx; -} - -inline uint get_g_os_is_yx_osa2_isa8_osv16_isv2(uint g, uint o, uint i, uint y, uint x, uint size_x, uint size_y, uint size_ifm, uint size_ofm, uint offset) -{ - const uint isv_idx = i % 2; - const uint isa_idx = (i / 2) % 8; - const uint is_idx = (i / 16); - const uint osv_idx = o % 16; - const uint osa_idx = (o / 16) % 2; - const uint os_idx = (o / 32); - - const uint ifm_16_aligned = ((size_ifm + 15)/16); - const uint ofm_32_aligned = ((size_ofm + 31)/32); - - size_t idx = offset + - isv_idx + - osv_idx * 2 + - isa_idx * 16 * 2 + - osa_idx * 8 * 32 + - x * 32 * 16 + - y * size_x * 32 * 16 + - is_idx * 32 * 16 * size_x * size_y + - os_idx * 32 * 16 * ifm_16_aligned * size_x * size_y + - g * 32 * 16 * ifm_16_aligned * ofm_32_aligned * size_x * size_y; - - return idx; -} - inline uint get_g_is_os_yx_isa2_osa8_isv8_osv2(uint g, uint o, uint i, uint z, uint y, uint x, uint size_x, uint size_y, uint size_z, uint size_ifm, uint size_ofm, uint offset) { @@ -1188,16 +926,6 @@ inline uint get_g_is_os_yx_isa4_osa8_isv8_osv4(uint g, uint o, uint i, uint z, u return get_g_os_is_yx_osa4_isa8_osv8_isv4(g, i, o, z, y, x, size_x, size_y, size_z, size_ofm, size_ifm, offset); } -#define GET_FILTER_IS_OS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(prefix, o, i, y, x) \ - get_g_is_os_yx_osa4_isa8_osv8_isv4( \ - 0, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - #define GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(prefix, o, i, y, x) \ get_g_os_is_yx_osa4_isa8_osv8_isv4( \ 0, o, i, 0, y, x, \ @@ -1218,140 +946,6 @@ inline uint get_g_is_os_yx_isa4_osa8_isv8_osv4(uint g, uint o, uint i, uint z, u CAT(prefix, _OFM_NUM), \ CAT(prefix, _OFFSET)) -#define GET_FILTER_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv4( \ - g, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_INDEX(prefix, g, o, i, z, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv4( \ - g, o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv2( \ - 0, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2_INDEX(prefix, o, i, z, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv2( \ - 0, o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV2_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv2( \ - g, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2_INDEX(prefix, g, o, i, z, y, x) \ - get_g_os_is_yx_osa4_isa8_osv8_isv2( \ - g, o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv8_isv2( \ - g, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV8_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv8_isv2( \ - 0, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_ZYX_OSA2_ISA8_OSV8_ISV2_INDEX(prefix, o, i, z, y, x) \ - get_g_os_is_yx_osa2_isa8_osv8_isv2( \ - 0, o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv16_isv4( \ - 0, o, i, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv16_isv4( \ - g, o, i, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv16_isv2( \ - 0, o, i, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osa2_isa8_osv16_isv2( \ - g, o, i, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV4_SWIZZLED_BY_4_INDEX(prefix, o, i, y, x) \ - get_os_is_yx_isa8_osv8_isv4_swizzled_by_4_index( \ - o, i, y, x, CAT(prefix, _SIZE_X ), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - #define GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4_INDEX(prefix, o, i, y, x) \ get_os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4_index( \ o, i, y, x, \ @@ -1371,43 +965,6 @@ inline uint get_g_is_os_yx_isa4_osa8_isv8_osv4(uint g, uint o, uint i, uint z, u CAT(prefix, _OFM_NUM), \ CAT(prefix, _OFFSET)) -#define GET_FILTER_IS_OS_YX_ISA2_OSA8_ISV8_OSV2_INDEX(prefix, o, i, y, x) \ - get_g_is_os_yx_isa2_osa8_isv8_osv2( \ - 0, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -#define GET_FILTER_IS_OS_YX_ISA4_OSA8_ISV8_OSV4_INDEX(prefix, o, i, y, x) \ - get_g_is_os_yx_isa4_osa8_isv8_osv4( \ - 0, o, i, 0, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 1, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _OFFSET)) - -inline uint get_is_o_yx_isv32_index(uint o, uint i, uint y, uint x, uint i_size, uint o_size, uint x_size, uint y_size) -{ - const uint i_aligned_to_32 = ((i_size + 31) / 32) * 32; - const uint i_val = i % 32; - const uint i_slice = i / 32; - const size_t idx = i_val + 32* (x + x_size * (y + y_size * (o + o_size * i_slice) ) ); - return idx; -} - -#define GET_FILTER_IS_O_YX_ISV32(prefix, o, i, y, x) \ - get_is_o_yx_isv32_index( \ - o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y)) - inline uint get_is_o32_yx_isv32_swizzled_by_4_index(uint o, uint i, uint y, uint x, uint i_size, uint o_size, uint x_size, uint y_size) { const uint o_aligned_to_32 = ((o_size + 31) / 32) * 32; @@ -1419,73 +976,6 @@ inline uint get_is_o32_yx_isv32_swizzled_by_4_index(uint o, uint i, uint y, uint return idx; } -#define GET_FILTER_IS_O32_YX_ISV32_SWIZZLED_BY_4(prefix, o, i, y, x) \ - get_is_o32_yx_isv32_swizzled_by_4_index( \ - o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y)) - -inline uint get_os_is_y_x8_osv8_isv4_index(uint o, uint i, uint y, uint x, uint i_size, uint o_size, uint x_size, uint y_size) -{ - const uint i_aligned_to_4 = ((i_size + 3) / 4) * 4; - const uint o_aligned_to_8 = ((o_size + 7) / 8) * 8; - const uint x_aligned_to_8 = ((x_size + 7) / 8) * 8; - const uint i_val = i % 4; - const uint i_slice = i / 4; - const uint o_val = o % 8; - const uint o_slice = o / 8; - const size_t idx = i_val + 4 * (o_val + 8 * ( x + x_aligned_to_8 * (y + y_size * (i_slice + (i_aligned_to_4/4) * (o_slice))))); - return idx; -} - -#define GET_FILTER_OS_IS_Y_X8_OSV8_ISV4(prefix, o, i, y, x) \ - get_os_is_y_x8_osv8_isv4_index( \ - o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y)) - -inline uint get_os_is_y_x8_osv8_isv4_swizzled_by_4_index(uint o, uint i, uint y, uint x, uint i_size, uint o_size, uint x_size, uint y_size) -{ - const uint i_aligned_to_4 = ((i_size + 3) / 4) * 4; - const uint o_aligned_to_8 = ((o_size + 7) / 8) * 8; - const uint x_aligned_to_8 = ((x_size + 7) / 8) * 8; - const uint i_val = i % 4; - const uint i_slice = i / 4; - const uint o_swizzled = (o % 4) * 8 + ((o % 32) / 4) + (o / 32) * 32; - const uint o_val = o_swizzled % 8; - const uint o_slice = o_swizzled / 8; - const size_t idx = i_val + 4 * (o_val + 8 * ( x + x_aligned_to_8 * (y + y_size * (i_slice + (i_aligned_to_4/4) * (o_slice))))); - return idx; -} - -#define GET_FILTER_OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4(prefix, o, i, y, x) \ - get_os_is_y_x8_osv8_isv4_swizzled_by_4_index( \ - o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y)) - -#define GET_FILTER_G_OS_IS_YX_OSV8_ISV2_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - g, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 8, 2) - -#define GET_FILTER_G_OS_IS_YX_OSV8_ISV4_INDEX(prefix, g, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - g, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 8, 4) - #define GET_FILTER_G_OS_IS_YX_OSV16_ISV4_INDEX(prefix, g, o, i, y, x) \ get_g_os_is_yx_osv_isv( \ g, o, i, y, x, \ @@ -1506,73 +996,6 @@ inline uint get_g_os_is_yx_osv_isv(uint g, uint o, uint i, uint y, uint x, x_size, y_size, 1, i_size, o_size, osv_size, isv_size); } -#define GET_FILTER_OS_IS_YX_OSV2_ISV4_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 2, 4) - -#define GET_FILTER_OS_IS_YX_OSV2_ISV16_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 2, 16) - -#define GET_FILTER_OS_IS_YX_OSV2_ISV32_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 2, 32) - -#define GET_FILTER_OS_IS_YX_OSV4_ISV16_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 4, 16) - -#define GET_FILTER_OS_IS_YX_OSV8_ISV16_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 8, 16) - -#define GET_FILTER_OS_IS_YX_OSV4_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 4, 2) - -#define GET_FILTER_OS_IS_YX_OSV8_ISV2_INDEX(prefix, o, i, y, x) \ - get_g_os_is_yx_osv_isv( \ - 0, o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), 8, 2) - -#define GET_FILTER_OS_IS_ZYX_OSV8_ISV2_INDEX(prefix, o, i, z, y, x) \ - get_os_is_zyx_osv_isv_index( \ - o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - 8, \ - 2) - #define GET_FILTER_OS_IS_YX_OSV8_ISV4_INDEX(prefix, o, i, y, x) \ get_g_os_is_yx_osv_isv( \ 0, o, i, y, x, \ @@ -1581,17 +1004,6 @@ inline uint get_g_os_is_yx_osv_isv(uint g, uint o, uint i, uint y, uint x, CAT(prefix, _SIZE_X), \ CAT(prefix, _SIZE_Y), 8, 4) -#define GET_FILTER_OS_IS_ZYX_OSV8_ISV4_INDEX(prefix, o, i, z, y, x) \ - get_os_is_zyx_osv_isv_index( \ - o, i, z, y, x, \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - CAT(prefix, _SIZE_Z), \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _OFM_NUM), \ - 8, \ - 4) - #define GET_FILTER_OS_IS_YX_OSV16_ISV4_INDEX(prefix, o, i, y, x) \ get_g_os_is_yx_osv_isv( \ 0, o, i, y, x, \ @@ -1675,14 +1087,6 @@ inline uint get_os_is_osv32_isv32_swizzled_by_4_index(uint o, uint i, uint y, ui return group_idx * (32 * 32) + idx_in_group; } -#define GET_FILTER_OS_IS_OSV32_ISV32_SWIZZLED_BY_4_INDEX(prefix, o, i, y, x)\ - get_os_is_osv32_isv32_swizzled_by_4_index(\ - o, i, y, x, CAT(prefix, _SIZE_X ),\ - CAT(prefix, _SIZE_Y),\ - CAT(prefix, _IFM_NUM),\ - CAT(prefix, _OFM_NUM),\ - CAT(prefix, _OFFSET)) - inline uint get_os_i_yxs_osv_yxsv4_index(uint o, uint i, uint y, uint x, uint i_size, uint size_x, uint size_y, uint osv) { const uint yxsv = 4; uint yx = y * size_x + x; @@ -1701,14 +1105,6 @@ inline uint get_os_i_yxs_osv_yxsv4_index(uint o, uint i, uint y, uint x, uint i_ return index; } -#define GET_FILTER_OS_I_YXS_OSV4_YXSV4_INDEX(prefix, o, i, y, x) \ - get_os_i_yxs_osv_yxsv4_index( \ - o, i, y, x, \ - CAT(prefix, _IFM_NUM), \ - CAT(prefix, _SIZE_X), \ - CAT(prefix, _SIZE_Y), \ - 4) - #define GET_FILTER_G_OS_IYX_OSV16(prefix, g, o, i, y, x, sub_group_size) \ CAT(prefix, _OFFSET) + \ (g * CAT(prefix, _GROUPS_PITCH)) + \ @@ -1916,18 +1312,6 @@ inline uint get_g_os_zyx_is_osv_isv_index(uint g, uint o, uint i, uint z, uint y CAT(tensor, _SIZE_X), \ osv, isv) - -#define GET_FILTER_OS_YX_IS_OSV8_ISV2_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, 0, o, i, 0, y, x, 8, 2) -#define GET_FILTER_OS_YX_IS_OSV8_ISV4_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, 0, o, i, 0, y, x, 8, 4) -#define GET_FILTER_OS_YX_IS_OSV16_ISV2_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, 0, o, i, 0, y, x, 16, 2) -#define GET_FILTER_OS_ZYX_IS_OSV8_ISV2_INDEX(tensor, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, 0, o, i, z, y, x, 8, 2) -#define GET_FILTER_OS_ZYX_IS_OSV8_ISV4_INDEX(tensor, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, 0, o, i, z, y, x, 8, 4) -#define GET_FILTER_G_OS_YX_IS_OSV8_ISV2_INDEX(tensor, g, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 2) -#define GET_FILTER_G_OS_YX_IS_OSV8_ISV4_INDEX(tensor, g, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 4) -#define GET_FILTER_G_OS_YX_IS_OSV16_ISV2_INDEX(tensor, g, o, i, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 16, 2) - -#define GET_FILTER_G_OS_ZYX_IS_OSV8_ISV2_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 2) -#define GET_FILTER_G_OS_ZYX_IS_OSV8_ISV4_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 4) #define GET_FILTER_G_OS_ZYX_IS_OSV16_ISV4_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 16, 4) #define GET_FILTER_G_OS_ZYX_IS_OSV16_ISV16_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 16, 16) #define GET_FILTER_G_OS_ZYX_IS_OSV16_ISV32_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 16, 32) @@ -1935,27 +1319,6 @@ inline uint get_g_os_zyx_is_osv_isv_index(uint g, uint o, uint i, uint z, uint y #define GET_FILTER_G_OS_ZYX_IS_OSV32_ISV16_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 32, 16) #define GET_FILTER_G_OS_ZYX_IS_OSV32_ISV32_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZYX_IS_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 32, 32) -#define GET_FILTER_O_IS_ZYX_ISV16_INDEX(prefix, o, i, z, y, x, isv) \ - CAT(prefix, _OFFSET) + \ - ((i) % (isv)) + \ - (o)*CAT(prefix, _OFM_PITCH) + \ - (isv)*( \ - (x)*CAT(prefix, _X_PITCH) + \ - (y)*CAT(prefix, _Y_PITCH) + \ - (z)*CAT(prefix, _Z_PITCH) + \ - ((i) / (isv))*CAT(prefix, _IFM_PITCH) \ - ) - -#define GET_FILTER_OS_YXI_OSV16(prefix, o, i, y, x) \ - CAT(prefix, _OFFSET) + \ - ((o) % (16)) + \ - (16)*( \ - (x)*CAT(prefix, _X_PITCH) + \ - (y)*CAT(prefix, _Y_PITCH) + \ - (i)*CAT(prefix, _IFM_PITCH) + \ - ((o) / (16))*CAT(prefix, _OFM_PITCH) \ - ) - inline uint get_g_os_y_is_x_osv_isv_index(uint g, uint o, uint i, uint y, uint x, uint x_size, uint y_size, uint i_size, uint o_size, uint osv_size, uint isv_size) { @@ -1991,12 +1354,6 @@ inline uint get_g_os_y_is_x_osv_isv_index(uint g, uint o, uint i, uint y, uint x CAT(tensor, _OFM_NUM), \ osv, isv) -#define GET_FILTER_OS_Y_IS_X_OSV8_ISV2_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_Y_IS_X_OSV_ISV_INDEX(tensor, 0, o, i, y, x, 8, 2) -#define GET_FILTER_OS_Y_IS_X_OSV8_ISV4_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_Y_IS_X_OSV_ISV_INDEX(tensor, 0, o, i, y, x, 8, 4) -#define GET_FILTER_OS_Y_IS_X_OSV16_ISV4_INDEX(tensor, o, i, y, x) GET_FILTER_G_OS_Y_IS_X_OSV_ISV_INDEX(tensor, 0, o, i, y, x, 16, 4) -#define GET_FILTER_G_OS_Y_IS_X_OSV8_ISV2_INDEX(tensor, g, o, i, y, x) GET_FILTER_G_OS_Y_IS_X_OSV_ISV_INDEX(tensor, g, o, i, y, x, 8, 2) -#define GET_FILTER_G_OS_Y_IS_X_OSV8_ISV4_INDEX(tensor, g, o, i, y, x) GET_FILTER_G_OS_Y_IS_X_OSV_ISV_INDEX(tensor, g, o, i, y, x, 8, 4) - inline uint get_g_os_zy_is_x_osv_isv_index(uint g, uint o, uint i, uint z, uint y, uint x, uint o_size, uint i_size, uint z_size, uint y_size, uint x_size, uint osv, uint isv) { @@ -2039,8 +1396,3 @@ inline uint get_g_os_zy_is_x_osv_isv_index(uint g, uint o, uint i, uint z, uint CAT(tensor, _SIZE_X), \ osv, isv) - -#define GET_FILTER_OS_ZY_IS_X_OSV8_ISV2_INDEX(tensor, o, i, z, y, x) GET_FILTER_G_OS_ZY_IS_X_OSV_ISV_INDEX(tensor, 0, o, i, z, y, x, 8, 2) -#define GET_FILTER_OS_ZY_IS_X_OSV8_ISV4_INDEX(tensor, o, i, z, y, x) GET_FILTER_G_OS_ZY_IS_X_OSV_ISV_INDEX(tensor, 0, o, i, z, y, x, 8, 4) -#define GET_FILTER_G_OS_ZY_IS_X_OSV8_ISV2_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZY_IS_X_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 2) -#define GET_FILTER_G_OS_ZY_IS_X_OSV8_ISV4_INDEX(tensor, g, o, i, z, y, x) GET_FILTER_G_OS_ZY_IS_X_OSV_ISV_INDEX(tensor, g, o, i, z, y, x, 8, 4) diff --git a/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/reorder_weights.cl b/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/reorder_weights.cl index aaee48fa852dc9..a5f733f590c18e 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/reorder_weights.cl +++ b/src/plugins/intel_gpu/src/kernel_selector/cl_kernels/reorder_weights.cl @@ -280,14 +280,10 @@ inline uint FUNC(get_input_index)(uint g, uint o, uint i, uint z, uint y, uint x return GET_FILTER_OS_IYX_OSV_INDEX(INPUT0, o, i, y, x, 32); #elif defined INPUT0_LAYOUT_OS_IYX_OSV32__AI32 return GET_FILTER_OS_IYX_OSV_INDEX(INPUT0, o, i, y, x, 32); -#elif defined INPUT0_LAYOUT_O_IS_YX_ISV2 - return GET_FILTER_O_IS_ZYX_ISV16_INDEX(INPUT0, o, i, 0, y, x, 2); #elif defined INPUT0_LAYOUT_O_IS_YX_ISV4 return GET_FILTER_O_IS_ZYX_ISV16_INDEX(INPUT0, o, i, 0, y, x, 4); #elif defined INPUT0_LAYOUT_O_IS_YX_ISV16 return GET_FILTER_O_IS_ZYX_ISV16_INDEX(INPUT0, o, i, 0, y, x, 16); -#elif defined INPUT0_LAYOUT_O_IS_ZYX_ISV16 - return GET_FILTER_O_IS_ZYX_ISV16_INDEX(INPUT0, o, i, z, y, x, 16); #elif defined INPUT0_LAYOUT_IYX_OSV64 return GET_FILTER_OS_IYX_OSV_INDEX(INPUT0, o, i, y, x, 64); #elif defined INPUT0_LAYOUT_OS_IYX_OSV16_ROTATE_180 @@ -306,14 +302,6 @@ inline uint FUNC(get_input_index)(uint g, uint o, uint i, uint z, uint y, uint x return GET_FILTER_OS_IS_YX_ISA8_OSV16_ISV4_INDEX(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_OS_IS_ZYX_ISA8_OSV16_ISV4 return GET_FILTER_OS_IS_ZYX_ISA8_OSV16_ISV4_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_IS_O_YX_ISV32 - return GET_FILTER_IS_O_YX_ISV32(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_IS_O32_YX_ISV32_SWIZZLED_BY_4 - return GET_FILTER_IS_O32_YX_ISV32_SWIZZLED_BY_4(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_Y_X8_OSV8_ISV4 - return GET_FILTER_OS_IS_Y_X8_OSV8_ISV4(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4 - return GET_FILTER_OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_OS_IS_YX_ISV16_OSV16 return GET_FILTER_OS_IS_YX_ISV_OSV_INDEX(INPUT0, o, i, y, x, 16, 16); #elif defined INPUT0_LAYOUT_OIYX_O16 @@ -324,64 +312,12 @@ inline uint FUNC(get_input_index)(uint g, uint o, uint i, uint z, uint y, uint x return GET_FILTER_IS_OS_ZYX_ISV16_OSV16_INDEX(INPUT0, o, i, z, y, x, SUB_GROUP_SIZE); #elif defined INPUT0_LAYOUT_IS_OS_YX_ISV16_OSV16 return GET_FILTER_IS_OS_YX_ISV16_OSV16_INDEX(INPUT0, o, i, y, x, SUB_GROUP_SIZE); -#elif defined INPUT0_LAYOUT_IS_OS_YX_ISV16_OSV8 - return GET_FILTER_IS_OS_YX_ISV16_OSV8_INDEX(INPUT0, o, i, y, x, SUB_GROUP_SIZE); -#elif defined INPUT0_LAYOUT_IS_OS_YX_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_OSV_ISV_INDEX(INPUT0, o, i, y, x, 8, 4); -#elif defined INPUT0_LAYOUT_IS_OS_YX_ISV16_OSV4 - return GET_FILTER_IS_OS_YX_ISV_OSV_INDEX(INPUT0, o, i, y, x, 16, 4); -#elif defined INPUT0_LAYOUT_IS_OS_YX_ISV16_OSV2 - return GET_FILTER_IS_OS_YX_ISV_OSV_INDEX(INPUT0, o, i, y, x, 16, 2); -#elif defined INPUT0_LAYOUT_G_OS_IS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(INPUT0, g, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_ZYX_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV4_INDEX(INPUT0, g, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV2_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_ZYX_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV4_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_YX_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_YX_OSA8_ISV16_OSV4 - return GET_FILTER_IS_OS_YX_OSA8_ISV16_OSV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_OSV32_ISV32_SWIZZLED_BY_4 - return GET_FILTER_OS_IS_OSV32_ISV32_SWIZZLED_BY_4_INDEX(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_OS_IS_ZYX_ISV8_OSV16_ISV2 return GET_FILTER_OS_IS_ZYX_ISV8_OSV16_ISV2_INDEX(INPUT0, o, i, z, y, x, SUB_GROUP_SIZE); #elif defined INPUT0_LAYOUT_OS_IS_YX_ISV8_OSV16_ISV2 return GET_FILTER_OS_IS_YX_ISV8_OSV16_ISV2_INDEX(INPUT0, o, i, y, x, SUB_GROUP_SIZE); #elif defined INPUT0_LAYOUT_OS_ZYXI_OSV16 return GET_FILTER_OS_ZYXI_OSV16(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_I_YXS_OSV4_YXSV4 - return GET_FILTER_OS_I_YXS_OSV4_YXSV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_Y_IS_X_OSV8_ISV2 - return GET_FILTER_OS_Y_IS_X_OSV8_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_Y_IS_X_OSV8_ISV4 - return GET_FILTER_OS_Y_IS_X_OSV8_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_YX_IS_OSV8_ISV2 - return GET_FILTER_OS_YX_IS_OSV8_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_YX_IS_OSV8_ISV4 - return GET_FILTER_OS_YX_IS_OSV8_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_YX_IS_OSV16_ISV2 - return GET_FILTER_OS_YX_IS_OSV16_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_ZYX_IS_OSV8_ISV2 - return GET_FILTER_OS_ZYX_IS_OSV8_ISV2_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_ZYX_IS_OSV8_ISV4 - return GET_FILTER_OS_ZYX_IS_OSV8_ISV4_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_ZY_IS_X_OSV8_ISV2 - return GET_FILTER_OS_ZY_IS_X_OSV8_ISV2_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_ZY_IS_X_OSV8_ISV4 - return GET_FILTER_OS_ZY_IS_X_OSV8_ISV4_INDEX(INPUT0, o, i, z, y, x); #elif defined INPUT0_LAYOUT_GOIZYX return GET_FILTER_GOIZYX(INPUT0, g, o, i, z, y, x); #elif defined INPUT0_LAYOUT_GIOZYX @@ -394,74 +330,28 @@ inline uint FUNC(get_input_index)(uint g, uint o, uint i, uint z, uint y, uint x return GET_FILTER_G_OS_IYX_OSV16(INPUT0, g, o, i, y, x, 16); #elif defined INPUT0_LAYOUT_G_OS_IYX_OSV32 return GET_FILTER_G_OS_IYX_OSV16(INPUT0, g, o, i, y, x, 32); -#elif defined INPUT0_LAYOUT_GS_OIYX_GSV8 - return GET_FILTER_GS_OIYX_GSV16(INPUT0, g, o, i, y, x, 8); -#elif defined INPUT0_LAYOUT_GS_OIZYX_GSV8 - return GET_FILTER_GS_OIZYX_GSV16(INPUT0, g, o, i, z, y, x, 8); #elif defined INPUT0_LAYOUT_GS_OIYX_GSV16 return GET_FILTER_GS_OIYX_GSV16(INPUT0, g, o, i, y, x, 16); #elif defined INPUT0_LAYOUT_GS_OIZYX_GSV16 return GET_FILTER_GS_OIZYX_GSV16(INPUT0, g, o, i, z, y, x, 16); #elif defined INPUT0_LAYOUT_GS_OIYX_GSV32 return GET_FILTER_GS_OIYX_GSV16(INPUT0, g, o, i, y, x, 32); -#elif defined INPUT0_LAYOUT_GS_OIZYX_GSV32 - return GET_FILTER_GS_OIZYX_GSV16(INPUT0, g, o, i, z, y, x, 32); #elif defined INPUT0_LAYOUT_GYXIO || \ defined INPUT0_LAYOUT_GOIYX || \ defined INPUT0_LAYOUT_GIOYX return GET_FILTER_GOIYX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_OSV16_ISV2_INDEX(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_OS_IS_YX_OSV16_ISV16 return GET_FILTER_OS_IS_YX_OSV16_ISV16_INDEX(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_OS_IS_ZYX_OSV16_ISV16 return GET_FILTER_OS_IS_ZYX_OSV16_ISV16_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSA2_ISA8_OSV16_ISV4 - return GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_IS_OS_YX_OSA4_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_OSV8_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_OSV8_ISV4 - return GET_FILTER_G_OS_IS_YX_OSV8_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSA2_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_OSV8_ISV2_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_ZYX_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_OSV8_ISV2_INDEX(INPUT0, o, i, z, y, x); #elif defined INPUT0_LAYOUT_OS_IS_YX_OSV8_ISV4 return GET_FILTER_OS_IS_YX_OSV8_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_ZYX_OSV8_ISV4 - return GET_FILTER_OS_IS_ZYX_OSV8_ISV4_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV2_ISV4 - return GET_FILTER_OS_IS_YX_OSV2_ISV4_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV2_ISV16 - return GET_FILTER_OS_IS_YX_OSV2_ISV16_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV2_ISV32 - return GET_FILTER_OS_IS_YX_OSV2_ISV32_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV4_ISV16 - return GET_FILTER_OS_IS_YX_OSV4_ISV16_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV8_ISV16 - return GET_FILTER_OS_IS_YX_OSV8_ISV16_INDEX(INPUT0, o, i, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_OSV4_ISV2 - return GET_FILTER_OS_IS_YX_OSV4_ISV2_INDEX(INPUT0, o, i, y, x); #elif defined INPUT0_LAYOUT_G_OS_IS_ZYX_OSV16_ISV16 return GET_FILTER_G_OS_IS_ZYX_OSV16_ISV16_INDEX(INPUT0, g, o, i, z, y, x); #elif defined INPUT0_LAYOUT_OS_IS_ZYX_OSV32_ISV16 return GET_FILTER_OS_IS_ZYX_OSV32_ISV16_INDEX(INPUT0, o, i, z, y, x); #elif defined INPUT0_LAYOUT_OS_IS_ZYX_OSV64_ISV16 return GET_FILTER_OS_IS_ZYX_OSV64_ISV16_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_YX_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_ISA8_OSV16_ISV2_INDEX(INPUT0, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_OS_IS_ZYX_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_ZYX_ISA8_OSV16_ISV2_INDEX(INPUT0, o, i, z, y, x); #elif defined INPUT0_LAYOUT_GS_OI_YXS_GSV16_YXSV4 return GET_FILTER_GS_OI_YXS_GSV16_YXSV4_INDEX(INPUT0, g, o, i, y, x); #elif defined INPUT0_LAYOUT_GS_OI_YXS_GSV32_YXSV4 @@ -478,24 +368,6 @@ inline uint FUNC(get_input_index)(uint g, uint o, uint i, uint z, uint y, uint x return GET_FILTER_G_OS_ZYX_IS_OSV32_ISV16_INDEX(INPUT0, g, o, i, z, y, x); #elif defined INPUT0_LAYOUT_G_OS_ZYX_IS_OSV32_ISV32 return GET_FILTER_G_OS_ZYX_IS_OSV32_ISV32_INDEX(INPUT0, g, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_G_OS_YX_IS_OSV8_ISV2 - return GET_FILTER_G_OS_YX_IS_OSV8_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_YX_IS_OSV8_ISV4 - return GET_FILTER_G_OS_YX_IS_OSV8_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_YX_IS_OSV16_ISV2 - return GET_FILTER_G_OS_YX_IS_OSV16_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_Y_IS_X_OSV8_ISV2 - return GET_FILTER_G_OS_Y_IS_X_OSV8_ISV2_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_Y_IS_X_OSV8_ISV4 - return GET_FILTER_G_OS_Y_IS_X_OSV8_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_Y_IS_X_OSV16_ISV4 - return GET_FILTER_G_OS_Y_IS_X_OSV16_ISV4_INDEX(INPUT0, g, o, i, y, x); -#elif defined INPUT0_LAYOUT_G_OS_ZY_IS_X_OSV8_ISV2 - return GET_FILTER_G_OS_ZY_IS_X_OSV8_ISV2_INDEX(INPUT0, g, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_G_OS_ZYX_IS_OSV8_ISV2 - return GET_FILTER_G_OS_ZYX_IS_OSV8_ISV2_INDEX(INPUT0, g, o, i, z, y, x); -#elif defined INPUT0_LAYOUT_G_OS_ZYX_IS_OSV8_ISV4 - return GET_FILTER_G_OS_ZYX_IS_OSV8_ISV4_INDEX(INPUT0, g, o, i, z, y, x); #else #error reorder_weights.cl: input format - not supported #endif @@ -521,14 +393,10 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_OS_IYX_OSV_INDEX(OUTPUT, o, i, y, x, 32); #elif defined OUTPUT_LAYOUT_OS_IYX_OSV64 return GET_FILTER_OS_IYX_OSV_INDEX(OUTPUT, o, i, y, x, 64); -#elif defined OUTPUT_LAYOUT_O_IS_YX_ISV2 - return GET_FILTER_O_IS_ZYX_ISV16_INDEX(OUTPUT, o, i, 0, y, x, 2); #elif defined OUTPUT_LAYOUT_O_IS_YX_ISV4 return GET_FILTER_O_IS_ZYX_ISV16_INDEX(OUTPUT, o, i, 0, y, x, 4); #elif defined OUTPUT_LAYOUT_O_IS_YX_ISV16 return GET_FILTER_O_IS_ZYX_ISV16_INDEX(OUTPUT, o, i, 0, y, x, 16); -#elif defined OUTPUT_LAYOUT_O_IS_ZYX_ISV16 - return GET_FILTER_O_IS_ZYX_ISV16_INDEX(OUTPUT, o, i, z, y, x, 16); #elif defined OUTPUT_LAYOUT_OS_IYX_OSV16_ROTATE_180 return GET_FILTER_OS_IYX_OSV_ROTATE_180_INDEX(OUTPUT, o, i, y, x, SUB_GROUP_SIZE); #elif defined OUTPUT_LAYOUT_I_YXS_OS_YXSV2_OSV16 @@ -545,154 +413,38 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_OS_IS_YX_ISA8_OSV16_ISV4_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_ISA8_OSV16_ISV4 return GET_FILTER_OS_IS_ZYX_ISA8_OSV16_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_IS_O_YX_ISV32 - return GET_FILTER_IS_O_YX_ISV32(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_O32_YX_ISV32_SWIZZLED_BY_4 - return GET_FILTER_IS_O32_YX_ISV32_SWIZZLED_BY_4(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_Y_X8_OSV8_ISV4 - return GET_FILTER_OS_IS_Y_X8_OSV8_ISV4(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4 - return GET_FILTER_OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV16_ISV4 return GET_FILTER_OS_IS_YX_OSV16_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV8_ISV4 return GET_FILTER_OS_IS_YX_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSV8_ISV4 - return GET_FILTER_OS_IS_ZYX_OSV8_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV2_ISV4 - return GET_FILTER_OS_IS_YX_OSV2_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV2_ISV16 - return GET_FILTER_OS_IS_YX_OSV2_ISV16_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV2_ISV32 - return GET_FILTER_OS_IS_YX_OSV2_ISV32_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV4_ISV16 - return GET_FILTER_OS_IS_YX_OSV4_ISV16_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV8_ISV16 - return GET_FILTER_OS_IS_YX_OSV8_ISV16_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV4_ISV2 - return GET_FILTER_OS_IS_YX_OSV4_ISV2_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV32_ISV4_SWIZZLED_BY_2 return GET_FILTER_OS_IS_YX_OSV32_ISV4_SWIZZLED_BY_2_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV32_ISV4 return GET_FILTER_OS_IS_YX_OSV32_ISV4_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSV32_ISV4 return GET_FILTER_OS_IS_ZYX_OSV32_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_ISA8_OSV8_ISV4_SWIZZLED_BY_4 - return GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV4_SWIZZLED_BY_4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA2_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSA2_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_OSA2_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISA2_OSA8_ISV8_OSV2 - return GET_FILTER_IS_OS_YX_ISA2_OSA8_ISV8_OSV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISA4_OSA8_ISV8_OSV4 - return GET_FILTER_IS_OS_YX_ISA4_OSA8_ISV8_OSV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA4_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4 return GET_FILTER_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_OSA4_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA4_ISA8_OSV8_ISV4 return GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA2_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA2_ISA8_OSV16_ISV4 - return GET_FILTER_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4 - return GET_FILTER_G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4_INDEX(OUTPUT, g, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4 return GET_FILTER_OS_IS_YX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4 return GET_FILTER_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4_INDEX(OUTPUT, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_ISV16_OSV16 return GET_FILTER_OS_IS_YX_ISV_OSV_INDEX(OUTPUT, o, i, y, x, 16, 16); -#elif defined OUTPUT_LAYOUT_OS_YXI_OSV16 - return GET_FILTER_OS_YXI_OSV16(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_ISV16_OSV16 return GET_FILTER_OS_IS_ZYX_ISV_OSV_INDEX(OUTPUT, o, i, z, y, x, 16, 16); #elif defined OUTPUT_LAYOUT_IS_OS_ZYX_ISV16_OSV16 return GET_FILTER_IS_OS_ZYX_ISV16_OSV16_INDEX(OUTPUT, o, i, z, y, x, SUB_GROUP_SIZE); #elif defined OUTPUT_LAYOUT_IS_OS_YX_ISV16_OSV16 return GET_FILTER_IS_OS_YX_ISV16_OSV16_INDEX(OUTPUT, o, i, y, x, SUB_GROUP_SIZE); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISV16_OSV8 - return GET_FILTER_IS_OS_YX_ISV16_OSV8_INDEX(OUTPUT, o, i, y, x, SUB_GROUP_SIZE); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_OSV_ISV_INDEX(OUTPUT, o, i, y, x, 8, 4); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISV16_OSV4 - return GET_FILTER_IS_OS_YX_ISV_OSV_INDEX(OUTPUT, o, i, y, x, 16, 4); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISV16_OSV2 - return GET_FILTER_IS_OS_YX_ISV_OSV_INDEX(OUTPUT, o, i, y, x, 16, 2); -#elif defined OUTPUT_LAYOUT_G_OS_IS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_ZYX_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_ZYX_ISA8_OSV8_ISV4_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_ZYX_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_ZYX_ISA8_OSV8_ISV2 - return GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_ZYX_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_ZYX_ISA8_OSV8_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_ISA8_OSV8_ISV4 - return GET_FILTER_G_OS_IS_YX_ISA8_OSV8_ISV4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_OS_IS_YX_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISA8_OSV8_ISV2 - return GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_ISA8_OSV8_ISV4 - return GET_FILTER_IS_OS_YX_ISA8_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_IS_OS_YX_OSA8_ISV16_OSV4 - return GET_FILTER_IS_OS_YX_OSA8_ISV16_OSV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_OSV32_ISV32_SWIZZLED_BY_4 - return GET_FILTER_OS_IS_OSV32_ISV32_SWIZZLED_BY_4_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_ISV8_OSV16_ISV2 return GET_FILTER_OS_IS_YX_ISV8_OSV16_ISV2_INDEX(OUTPUT, o, i, y, x, SUB_GROUP_SIZE); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_ISV8_OSV16_ISV2 return GET_FILTER_OS_IS_ZYX_ISV8_OSV16_ISV2_INDEX(OUTPUT, o, i, z, y, x, SUB_GROUP_SIZE); #elif defined OUTPUT_LAYOUT_OS_ZYXI_OSV16 return GET_FILTER_OS_ZYXI_OSV16(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_I_YXS_OSV4_YXSV4 - return GET_FILTER_OS_I_YXS_OSV4_YXSV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_Y_IS_X_OSV8_ISV2 - return GET_FILTER_OS_Y_IS_X_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_Y_IS_X_OSV8_ISV4 - return GET_FILTER_OS_Y_IS_X_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_Y_IS_X_OSV16_ISV4 - return GET_FILTER_OS_Y_IS_X_OSV16_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_YX_IS_OSV8_ISV2 - return GET_FILTER_OS_YX_IS_OSV8_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_YX_IS_OSV8_ISV4 - return GET_FILTER_OS_YX_IS_OSV8_ISV4_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_YX_IS_OSV16_ISV2 - return GET_FILTER_OS_YX_IS_OSV16_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_ZYX_IS_OSV8_ISV2 - return GET_FILTER_OS_ZYX_IS_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_ZYX_IS_OSV8_ISV4 - return GET_FILTER_OS_ZYX_IS_OSV8_ISV4_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_ZY_IS_X_OSV8_ISV2 - return GET_FILTER_OS_ZY_IS_X_OSV8_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_ZY_IS_X_OSV8_ISV4 - return GET_FILTER_OS_ZY_IS_X_OSV8_ISV4_INDEX(OUTPUT, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_GOIZYX || defined OUTPUT_LAYOUT_GIOZYX return GET_FILTER_INDEX_5D(OUTPUT, g, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_OS_IYX_OSV8 @@ -703,18 +455,12 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_G_OS_IYX_OSV16(OUTPUT, g, o, i, y, x, 16); #elif defined OUTPUT_LAYOUT_G_OS_IYX_OSV32 return GET_FILTER_G_OS_IYX_OSV16(OUTPUT, g, o, i, y, x, 32); -#elif defined OUTPUT_LAYOUT_GS_OIYX_GSV8 - return GET_FILTER_GS_OIYX_GSV16(OUTPUT, g, o, i, y, x, 8); -#elif defined OUTPUT_LAYOUT_GS_OIZYX_GSV8 - return GET_FILTER_GS_OIZYX_GSV16(OUTPUT, g, o, i, z, y, x, 8); #elif defined OUTPUT_LAYOUT_GS_OIYX_GSV16 return GET_FILTER_GS_OIYX_GSV16(OUTPUT, g, o, i, y, x, 16); #elif defined OUTPUT_LAYOUT_GS_OIZYX_GSV16 return GET_FILTER_GS_OIZYX_GSV16(OUTPUT, g, o, i, z, y, x, 16); #elif defined OUTPUT_LAYOUT_GS_OIYX_GSV32 return GET_FILTER_GS_OIYX_GSV16(OUTPUT, g, o, i, y, x, 32); -#elif defined OUTPUT_LAYOUT_GS_OIZYX_GSV32 - return GET_FILTER_GS_OIZYX_GSV16(OUTPUT, g, o, i, z, y, x, 32); #elif defined OUTPUT_LAYOUT_GYXIO || \ defined OUTPUT_LAYOUT_GOIYX || \ defined OUTPUT_LAYOUT_GIOYX @@ -737,12 +483,6 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_GS_OI_YXS_GSV4_YXSV4_INDEX(OUTPUT, g, o, i, y, x); #elif defined OUTPUT_LAYOUT_G_OS_IS_YX_ISV16_OSV16 return GET_FILTER_G_OS_IS_YX_ISV16_OSV16_INDEX(OUTPUT, g, o, i, y, x, SUB_GROUP_SIZE); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_ISA8_OSV16_ISV2_INDEX(OUTPUT, o, i, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_ZYX_ISA8_OSV16_ISV2 - return GET_FILTER_OS_IS_ZYX_ISA8_OSV16_ISV2_INDEX(OUTPUT, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV16_ISV2 - return GET_FILTER_OS_IS_YX_OSV16_ISV2_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_YX_OSV16_ISV16 return GET_FILTER_OS_IS_YX_OSV16_ISV16_INDEX(OUTPUT, o, i, y, x); #elif defined OUTPUT_LAYOUT_OS_IS_ZYX_OSV16_ISV16 @@ -757,10 +497,6 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_GS_OI_YXS_GSV16_YXSV4_INDEX(OUTPUT, g, o, i, y, x); #elif defined OUTPUT_LAYOUT_GS_OI_YXS_GSV32_YXSV4 return GET_FILTER_GS_OI_YXS_GSV32_YXSV4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSV8_ISV2 - return GET_FILTER_G_OS_IS_YX_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSV8_ISV4 - return GET_FILTER_G_OS_IS_YX_OSV8_ISV4_INDEX(OUTPUT, g, o, i, y, x); #elif defined OUTPUT_LAYOUT_G_OS_IS_YX_OSV16_ISV4 return GET_FILTER_G_OS_IS_YX_OSV16_ISV4_INDEX(OUTPUT, g, o, i, y, x); #elif defined OUTPUT_LAYOUT_G_OS_ZYX_IS_OSV16_ISV4 @@ -775,24 +511,6 @@ inline uint FUNC(get_output_index)(uint g, uint o, uint i, uint z, uint y, uint return GET_FILTER_G_OS_ZYX_IS_OSV32_ISV16_INDEX(OUTPUT, g, o, i, z, y, x); #elif defined OUTPUT_LAYOUT_G_OS_ZYX_IS_OSV32_ISV32 return GET_FILTER_G_OS_ZYX_IS_OSV32_ISV32_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_YX_IS_OSV8_ISV2 - return GET_FILTER_G_OS_YX_IS_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_YX_IS_OSV8_ISV4 - return GET_FILTER_G_OS_YX_IS_OSV8_ISV4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_YX_IS_OSV16_ISV2 - return GET_FILTER_G_OS_YX_IS_OSV16_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_Y_IS_X_OSV8_ISV2 - return GET_FILTER_G_OS_Y_IS_X_OSV8_ISV2_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_Y_IS_X_OSV8_ISV4 - return GET_FILTER_G_OS_Y_IS_X_OSV8_ISV4_INDEX(OUTPUT, g, o, i, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_ZY_IS_X_OSV8_ISV2 - return GET_FILTER_G_OS_ZY_IS_X_OSV8_ISV2_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_ZY_IS_X_OSV8_ISV4 - return GET_FILTER_G_OS_ZY_IS_X_OSV8_ISV4_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_ZYX_IS_OSV8_ISV2 - return GET_FILTER_G_OS_ZYX_IS_OSV8_ISV2_INDEX(OUTPUT, g, o, i, z, y, x); -#elif defined OUTPUT_LAYOUT_G_OS_ZYX_IS_OSV8_ISV4 - return GET_FILTER_G_OS_ZYX_IS_OSV8_ISV4_INDEX(OUTPUT, g, o, i, z, y, x); #else #error reorder_weights.cl: output format - not supported #endif diff --git a/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_common.cpp b/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_common.cpp index a6a3831dd26219..c94a3618f769b0 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_common.cpp +++ b/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_common.cpp @@ -310,16 +310,12 @@ std::string toString(WeightsLayout layout) { case WeightsLayout::iyxo: return "IYXO"; case WeightsLayout::yxio: return "YXIO"; case WeightsLayout::os_is_yx_isv16_osv16: return "OS_IS_YX_ISV16_OSV16"; - case WeightsLayout::os_is_yx_osv16_isv2: return "OS_IS_YX_OSV16_ISV2"; case WeightsLayout::os_is_yx_osv16_isv16: return "OS_IS_YX_OSV16_ISV16"; case WeightsLayout::os_is_zyx_osv16_isv16: return "OS_IS_ZYX_OSV16_ISV16"; case WeightsLayout::os_is_zyx_osv32_isv16: return "OS_IS_ZYX_OSV32_ISV16"; case WeightsLayout::os_is_zyx_osv64_isv16: return "OS_IS_ZYX_OSV64_ISV16"; - case WeightsLayout::o_is_yx_isv2: return "O_IS_YX_ISV2"; case WeightsLayout::o_is_yx_isv4: return "O_IS_YX_ISV4"; case WeightsLayout::o_is_yx_isv16: return "O_IS_YX_ISV16"; - case WeightsLayout::o_is_zyx_isv16: return "O_IS_ZYX_ISV16"; - case WeightsLayout::os_yxi_osv16: return "OS_YXI_OSV16"; case WeightsLayout::os_iyx_osv16: return "OS_IYX_OSV16"; case WeightsLayout::os_iyx_osv32: return "OS_IYX_OSV32"; case WeightsLayout::os_iyx_osv8: return "OS_IYX_OSV8"; @@ -342,52 +338,23 @@ std::string toString(WeightsLayout layout) { case WeightsLayout::image_2d_weights_winograd_6x3_s1_xfbyb: return "IMAGE_2D_WEIGHTS_WINOGRAD_6x3_S1_XFBYB"; case WeightsLayout::os_is_yx_isa8_osv8_isv4: return "OS_IS_YX_ISA8_OSV8_ISV4"; case WeightsLayout::os_is_yx_isa8_osv16_isv4: return "OS_IS_YX_ISA8_OSV16_ISV4"; - case WeightsLayout::os_is_yx_isa8_osv8_isv4_swizzled_by_4: return "OS_IS_YX_ISA8_OSV8_ISV4_SWIZZLED_BY_4"; case WeightsLayout::os_is_zyx_isa8_osv8_isv4: return "OS_IS_ZYX_ISA8_OSV8_ISV4"; case WeightsLayout::os_is_zyx_isa8_osv16_isv4: return "OS_IS_ZYX_ISA8_OSV16_ISV4"; case WeightsLayout::os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4: return "OS_IS_YX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4"; case WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4: return "OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4_SWIZZLED_BY_4"; - case WeightsLayout::is_o_yx_isv32: return "IS_O_YX_ISV32"; - case WeightsLayout::is_o32_yx_isv32_swizzled_by_4: return "IS_O32_YX_ISV32_SWIZZLED_BY_4"; - case WeightsLayout::os_is_y_x8_osv8_isv4: return "OS_IS_Y_X8_OSV8_ISV4"; case WeightsLayout::os_is_yx_osv16_isv4: return "OS_IS_YX_OSV16_ISV4"; case WeightsLayout::os_is_yx_osv32_isv4_swizzled_by_2: return "OS_IS_YX_OSV32_ISV4_SWIZZLED_BY_2"; case WeightsLayout::os_is_yx_osv32_isv4: return "OS_IS_YX_OSV32_ISV4"; case WeightsLayout::os_is_zyx_osv32_isv4: return "OS_IS_ZYX_OSV32_ISV4"; - case WeightsLayout::os_is_y_x8_osv8_isv4_swizzled_by_4: return "OS_IS_Y_X8_OSV8_ISV4_SWIZZLED_BY_4"; case WeightsLayout::oizyx: return "OIZYX"; case WeightsLayout::iozyx: return "IOZYX"; case WeightsLayout::os_is_zyx_isv16_osv16: return "OS_IS_ZYX_ISV16_OSV16"; case WeightsLayout::is_os_zyx_isv16_osv16: return "IS_OS_ZYX_ISV16_OSV16"; case WeightsLayout::is_os_yx_isv16_osv16: return "IS_OS_YX_ISV16_OSV16"; - case WeightsLayout::is_os_yx_isv16_osv8: return "IS_OS_YX_ISV16_OSV8"; - case WeightsLayout::is_os_yx_isv16_osv4: return "IS_OS_YX_ISV16_OSV4"; - case WeightsLayout::is_os_yx_isv16_osv2: return "IS_OS_YX_ISV16_OSV2"; - case WeightsLayout::is_os_zyx_isa8_osv8_isv2: return "IS_OS_ZYX_ISA8_OSV8_ISV2"; - case WeightsLayout::is_os_zyx_isa8_osv8_isv4: return "IS_OS_ZYX_ISA8_OSV8_ISV4"; - case WeightsLayout::os_is_zyx_isa8_osv8_isv2: return "OS_IS_ZYX_ISA8_OSV8_ISV2"; - case WeightsLayout::is_os_yx_isa8_osv8_isv2: return "IS_OS_YX_ISA8_OSV8_ISV2"; - case WeightsLayout::is_os_yx_isa8_osv8_isv4: return "IS_OS_YX_ISA8_OSV8_ISV4"; - case WeightsLayout::is_os_yx_osv8_isv4: return "IS_OS_YX_OSV8_ISV4"; - case WeightsLayout::is_os_yx_osa8_isv16_osv4: return "IS_OS_YX_OSA8_ISV16_OSV4"; - case WeightsLayout::os_is_yx_isa8_osv8_isv2: return "OS_IS_YX_ISA8_OSV8_ISV2"; - case WeightsLayout::os_is_yx_isa8_osv16_isv2: return "OS_IS_YX_ISA8_OSV16_ISV2"; - case WeightsLayout::os_is_zyx_isa8_osv16_isv2: return "OS_IS_ZYX_ISA8_OSV16_ISV2"; case WeightsLayout::os_is_zyx_isv8_osv16_isv2: return "OS_IS_ZYX_ISV8_OSV16_ISV2"; case WeightsLayout::os_zyxi_osv16: return "OS_ZYXI_OSV16"; case WeightsLayout::os_is_yx_isv8_osv16_isv2: return "OS_IS_YX_ISV8_OSV16_ISV2"; - case WeightsLayout::os_is_osv32_isv32_swizzled_by_4: return "OS_IS_OSV32_ISV32_SWIZZLED_BY_4"; - case WeightsLayout::os_i_yxs_osv4_yxsv4: return "OS_I_YXS_OSV4_YXSV4"; case WeightsLayout::os_is_yx_osv8_isv4: return "OS_IS_YX_OSV8_ISV4"; - case WeightsLayout::os_is_zyx_osv8_isv4: return "OS_IS_ZYX_OSV8_ISV4"; - case WeightsLayout::os_is_yx_osv8_isv2: return "OS_IS_YX_OSV8_ISV2"; - case WeightsLayout::os_is_yx_osv2_isv4: return "OS_IS_YX_OSV2_ISV4"; - case WeightsLayout::os_is_yx_osv2_isv16: return "OS_IS_YX_OSV2_ISV16"; - case WeightsLayout::os_is_yx_osv2_isv32: return "OS_IS_YX_OSV2_ISV32"; - case WeightsLayout::os_is_yx_osv4_isv16: return "OS_IS_YX_OSV4_ISV16"; - case WeightsLayout::os_is_yx_osv8_isv16: return "OS_IS_YX_OSV8_ISV16"; - case WeightsLayout::os_is_yx_osv4_isv2: return "OS_IS_YX_OSV4_ISV2"; - case WeightsLayout::os_is_zyx_osv8_isv2: return "OS_IS_ZYX_OSV8_ISV2"; case WeightsLayout::goiyx: return "GOIYX"; case WeightsLayout::gioyx: return "GIOYX"; case WeightsLayout::gyxio: return "GYXIO"; @@ -396,52 +363,23 @@ std::string toString(WeightsLayout layout) { case WeightsLayout::g_os_iyx_osv8: return "G_OS_IYX_OSV8"; case WeightsLayout::g_os_iyx_osv16: return "G_OS_IYX_OSV16"; case WeightsLayout::g_os_iyx_osv32: return "G_OS_IYX_OSV32"; - case WeightsLayout::gs_oiyx_gsv8: return "GS_OIYX_GSV8"; - case WeightsLayout::gs_oizyx_gsv8: return "GS_OIZYX_GSV8"; case WeightsLayout::gs_oiyx_gsv16: return "GS_OIYX_GSV16"; case WeightsLayout::gs_oizyx_gsv16: return "GS_OIZYX_GSV16"; case WeightsLayout::gs_oiyx_gsv32: return "GS_OIYX_GSV32"; - case WeightsLayout::gs_oizyx_gsv32: return "GS_OIZYX_GSV32"; case WeightsLayout::gi_yxs_os_yxsv2_osv16: return "GI_YXS_OS_YXSV2_OSV16"; case WeightsLayout::g_is_os_zyx_isv16_osv16: return "G_IS_OS_ZYX_ISV16_OSV16"; case WeightsLayout::g_is_os_yx_isv16_osv16: return "G_IS_OS_YX_ISV16_OSV16"; case WeightsLayout::g_os_is_zyx_isv8_osv16_isv2: return "G_OS_IS_ZYX_ISV8_OSV16_ISV2"; case WeightsLayout::g_os_is_yx_isv8_osv16_isv2: return "G_OS_IS_YX_ISV8_OSV16_ISV2"; case WeightsLayout::g_os_is_zyx_isv16_osv16: return "G_OS_IS_ZYX_ISV16_OSV16"; - case WeightsLayout::g_os_zy_is_x_osv8_isv2: return "G_OS_ZY_IS_X_OSV8_ISV2"; - case WeightsLayout::g_os_zy_is_x_osv8_isv4: return "G_OS_ZY_IS_X_OSV8_ISV4"; - case WeightsLayout::g_os_zyx_is_osv8_isv2: return "G_OS_ZYX_IS_OSV8_ISV2"; - case WeightsLayout::g_os_zyx_is_osv8_isv4: return "G_OS_ZYX_IS_OSV8_ISV4"; case WeightsLayout::giy_xs_os_xsv2_osv16__ao32: return "GIY_XS_OS_XSV2_OSV16__AO32"; case WeightsLayout::giy_xs_os_xsv2_osv8__ao32: return "GIY_XS_OS_XSV2_OSV8__AO32"; case WeightsLayout::gs_oi_yxs_gsv4_yxsv4: return "GS_OI_YXS_GSV4_YXSV4"; case WeightsLayout::gs_oi_yxs_gsv16_yxsv4: return "GS_OI_YXS_GSV16_YXSV4"; case WeightsLayout::gs_oi_yxs_gsv32_yxsv4: return "GS_OI_YXS_GSV32_YXSV4"; case WeightsLayout::os_is_yx_osa4_isa8_osv8_isv4: return "OS_IS_YX_OSA4_ISA8_OSV8_ISV4"; - case WeightsLayout::g_os_is_yx_osa2_isa8_osv8_isv2: return "G_OS_IS_YX_OSA2_ISA8_OSV8_ISV2"; - case WeightsLayout::g_os_is_yx_osa4_isa8_osv8_isv4: return "G_OS_IS_YX_OSA4_ISA8_OSV8_ISV4"; - case WeightsLayout::g_os_is_zyx_osa4_isa8_osv8_isv4: return "G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4"; - case WeightsLayout::g_os_is_zyx_isa8_osv8_isv2: return "G_OS_IS_ZYX_ISA8_OSV8_ISV2"; - case WeightsLayout::g_os_is_zyx_isa8_osv8_isv4: return "G_OS_IS_ZYX_ISA8_OSV8_ISV4"; - case WeightsLayout::os_is_yx_osa4_isa8_osv8_isv2: return "OS_IS_YX_OSA4_ISA8_OSV8_ISV2"; - case WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv2: return "OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2"; case WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv4: return "OS_IS_ZYX_OSA4_ISA8_OSV8_ISV4"; - case WeightsLayout::is_os_yx_osa4_isa8_osv8_isv4: return "IS_OS_YX_OSA4_ISA8_OSV8_ISV4"; - case WeightsLayout::g_os_is_yx_isa8_osv8_isv2: return "G_OS_IS_YX_ISA8_OSV8_ISV2"; - case WeightsLayout::g_os_is_yx_isa8_osv8_isv4: return "G_OS_IS_YX_ISA8_OSV8_ISV4"; - case WeightsLayout::g_os_is_yx_osa4_isa8_osv8_isv2: return "G_OS_IS_YX_OSA4_ISA8_OSV8_ISV2"; - case WeightsLayout::g_os_is_zyx_osa4_isa8_osv8_isv2: return "G_OS_IS_ZYX_OSA4_ISA8_OSV8_ISV2"; - case WeightsLayout::os_is_yx_osa2_isa8_osv16_isv4: return "OS_IS_YX_OSA2_ISA8_OSV16_ISV4"; - case WeightsLayout::g_os_is_yx_osa2_isa8_osv16_isv4: return "G_OS_IS_YX_OSA2_ISA8_OSV16_ISV4"; - case WeightsLayout::os_is_yx_osa2_isa8_osv16_isv2: return "OS_IS_YX_OSA2_ISA8_OSV16_ISV2"; - case WeightsLayout::g_os_is_yx_osa2_isa8_osv16_isv2: return "G_OS_IS_YX_OSA2_ISA8_OSV16_ISV2"; - case WeightsLayout::os_is_yx_osa2_isa8_osv8_isv2: return "OS_IS_YX_OSA2_ISA8_OSV8_ISV2"; - case WeightsLayout::os_is_zyx_osa2_isa8_osv8_isv2: return "OS_IS_ZYX_OSA2_ISA8_OSV8_ISV2"; - case WeightsLayout::is_os_yx_isa2_osa8_isv8_osv2: return "IS_OS_YX_ISA2_OSA8_ISV8_OSV2"; - case WeightsLayout::is_os_yx_isa4_osa8_isv8_osv4: return "IS_OS_YX_ISA4_OSA8_ISV8_OSV4"; case WeightsLayout::g_os_is_yx_isv16_osv16: return "G_OS_IS_YX_ISV16_OSV16"; - case WeightsLayout::g_os_is_yx_osv8_isv2: return "G_OS_IS_YX_OSV8_ISV2"; - case WeightsLayout::g_os_is_yx_osv8_isv4: return "G_OS_IS_YX_OSV8_ISV4"; case WeightsLayout::g_os_is_yx_osv16_isv4: return "G_OS_IS_YX_OSV16_ISV4"; case WeightsLayout::g_os_is_zyx_osv16_isv16: return "G_OS_IS_ZYX_OSV16_ISV16"; case WeightsLayout::g_os_zyx_is_osv16_isv4: return "G_OS_ZYX_IS_OSV16_ISV4"; @@ -450,23 +388,7 @@ std::string toString(WeightsLayout layout) { case WeightsLayout::g_os_zyx_is_osv32_isv4: return "G_OS_ZYX_IS_OSV32_ISV4"; case WeightsLayout::g_os_zyx_is_osv32_isv16: return "G_OS_ZYX_IS_OSV32_ISV16"; case WeightsLayout::g_os_zyx_is_osv32_isv32: return "G_OS_ZYX_IS_OSV32_ISV32"; - case WeightsLayout::os_y_is_x_osv8_isv2: return "OS_Y_IS_X_OSV8_ISV2"; - case WeightsLayout::os_y_is_x_osv8_isv4: return "OS_Y_IS_X_OSV8_ISV4"; - case WeightsLayout::os_y_is_x_osv16_isv4: return "OS_Y_IS_X_OSV16_ISV4"; - case WeightsLayout::os_yx_is_osv8_isv2: return "OS_YX_IS_OSV8_ISV2"; - case WeightsLayout::os_yx_is_osv8_isv4: return "OS_YX_IS_OSV8_ISV4"; - case WeightsLayout::os_yx_is_osv16_isv2: return "OS_YX_IS_OSV16_ISV2"; - case WeightsLayout::os_zyx_is_osv8_isv2: return "OS_ZYX_IS_OSV8_ISV2"; - case WeightsLayout::os_zyx_is_osv8_isv4: return "OS_ZYX_IS_OSV8_ISV4"; - - case WeightsLayout::os_zy_is_x_osv8_isv2: return "OS_ZY_IS_X_OSV8_ISV2"; - case WeightsLayout::os_zy_is_x_osv8_isv4: return "OS_ZY_IS_X_OSV8_ISV4"; - - case WeightsLayout::g_os_yx_is_osv8_isv2: return "G_OS_YX_IS_OSV8_ISV2"; - case WeightsLayout::g_os_yx_is_osv8_isv4: return "G_OS_YX_IS_OSV8_ISV4"; - case WeightsLayout::g_os_yx_is_osv16_isv2: return "G_OS_YX_IS_OSV16_ISV2"; - case WeightsLayout::g_os_y_is_x_osv8_isv2: return "G_OS_Y_IS_X_OSV8_ISV2"; - case WeightsLayout::g_os_y_is_x_osv8_isv4: return "G_OS_Y_IS_X_OSV8_ISV4"; + default: throw std::invalid_argument("Failed to convert WeightsLayout " + std::to_string(layout) + " to string"); } } diff --git a/src/plugins/intel_gpu/src/kernel_selector/kernels/reorder/reorder_kernel_base.cpp b/src/plugins/intel_gpu/src/kernel_selector/kernels/reorder/reorder_kernel_base.cpp index e1d79663d301c5..ffbc0331a8faed 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/kernels/reorder/reorder_kernel_base.cpp +++ b/src/plugins/intel_gpu/src/kernel_selector/kernels/reorder/reorder_kernel_base.cpp @@ -12,8 +12,6 @@ namespace kernel_selector { inline uint32_t SubGroupSize(WeightsLayout l) { switch (l) { - case WeightsLayout::o_is_yx_isv16: - case WeightsLayout::o_is_zyx_isv16: case WeightsLayout::os_iyx_osv16: case WeightsLayout::os_iyx_osv32: case WeightsLayout::os_iyx_osv64: @@ -34,7 +32,6 @@ inline uint32_t SubGroupSize(WeightsLayout l) { case WeightsLayout::gs_oiyx_gsv16: case WeightsLayout::gs_oizyx_gsv16: case WeightsLayout::gs_oiyx_gsv32: - case WeightsLayout::gs_oizyx_gsv32: case WeightsLayout::g_os_iyx_osv16_rotate_180: case WeightsLayout::gi_yxs_os_yxsv2_osv16: case WeightsLayout::g_is_os_zyx_isv16_osv16: @@ -44,15 +41,12 @@ inline uint32_t SubGroupSize(WeightsLayout l) { case WeightsLayout::g_os_is_zyx_isv16_osv16: case WeightsLayout::giy_xs_os_xsv2_osv16__ao32: case WeightsLayout::g_os_is_yx_isv16_osv16: - case WeightsLayout::os_is_yx_osv16_isv2: case WeightsLayout::os_is_yx_osv16_isv16: return 16; case WeightsLayout::os_i_osv8__ai8: case WeightsLayout::iy_xs_os_xsv2_osv8__ao32: case WeightsLayout::giy_xs_os_xsv2_osv8__ao32: case WeightsLayout::g_os_iyx_osv8: - case WeightsLayout::gs_oiyx_gsv8: - case WeightsLayout::gs_oizyx_gsv8: return 8; default: return 1; diff --git a/src/plugins/intel_gpu/src/kernel_selector/tensor_type.cpp b/src/plugins/intel_gpu/src/kernel_selector/tensor_type.cpp index 60f942b036b1e9..8288ea269450b0 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/tensor_type.cpp +++ b/src/plugins/intel_gpu/src/kernel_selector/tensor_type.cpp @@ -85,15 +85,11 @@ WeightsTensor::WeightsChannelArray WeightsTensor::weightsChannelArray {{ { WeightsLayout::os_iyx_osv32__ai32, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_iyx_osv64, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_iyx_osv16_rotate_180, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::o_is_yx_isv2, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::o_is_yx_isv4, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::o_is_yx_isv16, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::o_is_zyx_isv16, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::os_yxi_osv16, { 1, 2, -1, 0, 3, -1 } }, { WeightsLayout::os_i_osv8__ai8, { -1, -1, -1, 0, 1, -1 } }, { WeightsLayout::os_i_osv16__ai8, { -1, -1, -1, 0, 1, -1 } }, { WeightsLayout::os_i_osv16, { -1, -1, -1, 0, 1, -1 } }, - { WeightsLayout::os_is_yx_osv16_isv2, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_osv16_isv16, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_zyx_osv16_isv16, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::g_os_is_zyx_osv16_isv16, { 0, 1, 2, 3, 4, 5 } }, @@ -111,42 +107,13 @@ WeightsTensor::WeightsChannelArray WeightsTensor::weightsChannelArray {{ { WeightsLayout::image_2d_weights_winograd_6x3_s1_xfbyb, { 3, 0, -1, 2, 1, -1 } }, { WeightsLayout::os_is_yx_isa8_osv8_isv4, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_isa8_osv16_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_isa8_osv8_isv4_swizzled_by_4, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_osa4_isa8_osv8_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::g_os_is_yx_osa2_isa8_osv8_isv2, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_yx_osa4_isa8_osv8_isv4, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_zyx_osa4_isa8_osv8_isv4, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::g_os_is_zyx_isa8_osv8_isv2, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::g_os_is_zyx_isa8_osv8_isv4, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::os_is_yx_osa4_isa8_osv8_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv2, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv4, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::g_os_is_yx_osa4_isa8_osv8_isv2, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_zyx_osa4_isa8_osv8_isv2, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::os_is_yx_osa2_isa8_osv8_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_zyx_osa2_isa8_osv8_isv2, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::os_is_yx_osa2_isa8_osv16_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::g_os_is_yx_osa2_isa8_osv16_isv4, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::os_is_yx_osa2_isa8_osv16_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::g_os_is_yx_osa2_isa8_osv16_isv2, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::os_is_zyx_isa8_osv8_isv4, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_zyx_isa8_osv16_isv4, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::is_o_yx_isv32, { 1, 2, -1, 0, 3, -1 } }, - { WeightsLayout::is_o32_yx_isv32_swizzled_by_4, { 1, 2, -1, 0, 3, -1 } }, - { WeightsLayout::os_is_y_x8_osv8_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_y_x8_osv8_isv4_swizzled_by_4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv2_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv2_isv16, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv2_isv32, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv4_isv16, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv8_isv16, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_yx_osv4_isv2, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_osv8_isv4, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_zyx_osv8_isv4, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::os_is_yx_osv8_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_zyx_osv8_isv2, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_yx_osv16_isv4, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_osv32_isv4_swizzled_by_2, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_yx_osv32_isv4, { 0, 1, -1, 2, 3, -1 } }, @@ -155,40 +122,12 @@ WeightsTensor::WeightsChannelArray WeightsTensor::weightsChannelArray {{ { WeightsLayout::iozyx, { 0, 1, 2, 4, 3, -1 } }, { WeightsLayout::os_is_zyx_isv16_osv16, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_yx_isv16_osv16, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::is_os_yx_osv8_isv4, { 0, 1, -1, 3, 2, -1 } }, { WeightsLayout::is_os_zyx_isv16_osv16, { 0, 1, 2, 4, 3, -1 } }, { WeightsLayout::is_os_yx_isv16_osv16, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isv16_osv8, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isv16_osv4, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isv16_osv2, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isa2_osa8_isv8_osv2, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isa4_osa8_isv8_osv4, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_osa4_isa8_osv8_isv4, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::os_is_osv32_isv32_swizzled_by_4, { -1, -1, -1, 0, 1, -1 } }, - { WeightsLayout::os_is_zyx_isa8_osv16_isv2, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::os_is_yx_isa8_osv16_isv2, { 0, 1, -1, 2, 3, -1 } }, { WeightsLayout::os_is_zyx_isv8_osv16_isv2, { 0, 1, 2, 3, 4, -1 } }, { WeightsLayout::os_is_yx_isv8_osv16_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::os_is_zyx_isa8_osv8_isv2, { 0, 1, 2, 3, 4, -1 } }, - { WeightsLayout::is_os_zyx_isa8_osv8_isv2, { 0, 1, 2, 4, 3, -1 } }, - { WeightsLayout::is_os_zyx_isa8_osv8_isv4, { 0, 1, 2, 4, 3, -1 } }, - { WeightsLayout::os_is_yx_isa8_osv8_isv2, { 0, 1, -1, 2, 3, -1 } }, - { WeightsLayout::is_os_yx_isa8_osv8_isv2, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_isa8_osv8_isv4, { 0, 1, -1, 3, 2, -1 } }, - { WeightsLayout::is_os_yx_osa8_isv16_osv4, { 0, 1, -1, 3, 2, -1 } }, { WeightsLayout::os_zyxi_osv16, { 1, 2, 3, 0, 4, -1 } }, - { WeightsLayout::os_i_yxs_osv4_yxsv4, { 0, 1, -1, 2, 3, -1 } }, // X, Y, Z, IFM, OFM, G - { WeightsLayout::os_y_is_x_osv8_isv2, { 0, 2, -1, 1, 3, -1 } }, - { WeightsLayout::os_y_is_x_osv8_isv4, { 0, 2, -1, 1, 3, -1 } }, - { WeightsLayout::os_y_is_x_osv16_isv4, { 0, 2, -1, 1, 3, -1 } }, - { WeightsLayout::os_yx_is_osv8_isv2, { 1, 2, -1, 0, 3, -1 } }, - { WeightsLayout::os_yx_is_osv8_isv4, { 1, 2, -1, 0, 3, -1 } }, - { WeightsLayout::os_yx_is_osv16_isv2, { 1, 2, -1, 0, 3, -1 } }, - { WeightsLayout::os_zyx_is_osv8_isv2, { 1, 2, 3, 0, 4, -1 } }, - { WeightsLayout::os_zyx_is_osv8_isv4, { 1, 2, 3, 0, 4, -1 } }, - { WeightsLayout::os_zy_is_x_osv8_isv2, { 0, 2, 3, 1, 4, -1 } }, - { WeightsLayout::os_zy_is_x_osv8_isv4, { 0, 2, 3, 1, 4, -1 } }, { WeightsLayout::goiyx, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::gioyx, { 0, 1, -1, 3, 2, 4 } }, { WeightsLayout::goizyx, { 0, 1, 2, 3, 4, 5 } }, @@ -196,33 +135,22 @@ WeightsTensor::WeightsChannelArray WeightsTensor::weightsChannelArray {{ { WeightsLayout::g_os_iyx_osv8, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_iyx_osv16, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_iyx_osv32, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::gs_oiyx_gsv8, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::gs_oizyx_gsv8, { 0, 1, 2, 3, 4, 5 } }, { WeightsLayout::gs_oiyx_gsv16, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::gs_oizyx_gsv16, { 0, 1, 2, 3, 4, 5 } }, { WeightsLayout::gs_oiyx_gsv32, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::gs_oizyx_gsv32, { 0, 1, 2, 3, 4, 5 } }, { WeightsLayout::gyxio, { 2, 3, -1, 1, 0, 4 } }, { WeightsLayout::gi_yxs_os_yxsv2_osv16, { 1, 2, -1, 3, 0, 4 } }, { WeightsLayout::g_is_os_zyx_isv16_osv16, { 0, 1, 2, 4, 3, 5 } }, { WeightsLayout::g_is_os_yx_isv16_osv16, { 0, 1, -1, 3, 2, 4 } }, - { WeightsLayout::g_os_is_yx_isa8_osv8_isv2, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_yx_isa8_osv8_isv4, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_is_zyx_isv8_osv16_isv2, { 0, 1, 2, 3, 4, 5 } }, { WeightsLayout::g_os_is_yx_isv8_osv16_isv2, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_is_zyx_isv16_osv16, { 0, 1, 2, 3, 4, 5 } }, - { WeightsLayout::g_os_zy_is_x_osv8_isv2, { 0, 2, 3, 1, 4, 5 } }, - { WeightsLayout::g_os_zy_is_x_osv8_isv4, { 0, 2, 3, 1, 4, 5 } }, - { WeightsLayout::g_os_zyx_is_osv8_isv2, { 1, 2, 3, 0, 4, 5 } }, - { WeightsLayout::g_os_zyx_is_osv8_isv4, { 1, 2, 3, 0, 4, 5 } }, { WeightsLayout::giy_xs_os_xsv2_osv16__ao32, { 1, 2, -1, 3, 0, 4 } }, { WeightsLayout::giy_xs_os_xsv2_osv8__ao32, { 1, 2, -1, 3, 0, 4 } }, { WeightsLayout::g_os_is_yx_isv16_osv16, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::gs_oi_yxs_gsv4_yxsv4, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::gs_oi_yxs_gsv16_yxsv4, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::gs_oi_yxs_gsv32_yxsv4, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_yx_osv8_isv2, { 0, 1, -1, 2, 3, 4 } }, - { WeightsLayout::g_os_is_yx_osv8_isv4, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_is_yx_osv16_isv4, { 0, 1, -1, 2, 3, 4 } }, { WeightsLayout::g_os_zyx_is_osv16_isv4, { 1, 2, 3, 0, 4, 5 } }, { WeightsLayout::g_os_zyx_is_osv16_isv16, { 1, 2, 3, 0, 4, 5 } }, @@ -230,11 +158,6 @@ WeightsTensor::WeightsChannelArray WeightsTensor::weightsChannelArray {{ { WeightsLayout::g_os_zyx_is_osv32_isv4, { 1, 2, 3, 0, 4, 5 } }, { WeightsLayout::g_os_zyx_is_osv32_isv16, { 1, 2, 3, 0, 4, 5 } }, { WeightsLayout::g_os_zyx_is_osv32_isv32, { 1, 2, 3, 0, 4, 5 } }, - { WeightsLayout::g_os_yx_is_osv8_isv2, { 1, 2, -1, 0, 3, 4 } }, - { WeightsLayout::g_os_yx_is_osv8_isv4, { 1, 2, -1, 0, 3, 4 } }, - { WeightsLayout::g_os_yx_is_osv16_isv2, { 1, 2, -1, 0, 3, 4 } }, - { WeightsLayout::g_os_y_is_x_osv8_isv2, { 0, 2, -1, 1, 3, 4 } }, - { WeightsLayout::g_os_y_is_x_osv8_isv4, { 0, 2, -1, 1, 3, 4 } }, }}; NDims DataTensor::GetSimpleDims(const std::vector& d, DataLayout l) { @@ -621,10 +544,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l // TODO: It's not the right pitches. it's here in order to calculate physical size switch (l) { - case o_is_yx_isv2: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 2); - break; case o_is_yx_isv4: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 4); @@ -633,12 +552,7 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 16); break; - case o_is_zyx_isv16: - assert(newDims.size() == 5); - newDims[2] = RoundUp(newDims[3], 16); - break; case os_iyx_osv16: - case os_yxi_osv16: case os_iyx_osv16_rotate_180: assert(newDims.size() == 4); newDims[3] = RoundUp(newDims[3], 16); @@ -674,11 +588,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l assert(newDims.size() == 2); newDims[1] = RoundUp(newDims[1], 16); break; - case os_is_osv32_isv32_swizzled_by_4: - assert(newDims.size() == 2); - newDims[0] = RoundUp(newDims[0], 32); - newDims[1] = RoundUp(newDims[1], 32); - break; case i_yxs_os_yxsv2_osv16: assert(newDims.size() == 4); newDims[0] = RoundUp(newDims[0], 16); @@ -718,63 +627,14 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l newDims[4] = RoundUp(newDims[4], 32); newDims[3] = RoundUp(newDims[3], 32); break; - case os_is_yx_isa8_osv8_isv4_swizzled_by_4: - assert(newDims.size() == 4); - newDims[3] = RoundUp(newDims[3], 32); - newDims[2] = RoundUp(newDims[2], 32); - break; - case is_o_yx_isv32: - assert(newDims.size() == 4); - newDims[0] = RoundUp(newDims[0], 32); - break; - case is_o32_yx_isv32_swizzled_by_4: - assert(newDims.size() == 4); - newDims[0] = RoundUp(newDims[0], 32); - newDims[3] = RoundUp(newDims[3], 32); - break; - case os_is_yx_osa2_isa8_osv8_isv2: - case is_os_yx_isa2_osa8_isv8_osv2: - case g_os_is_yx_osa2_isa8_osv8_isv2: - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 16); - break; case os_is_yx_osa4_isa8_osv8_isv4: - case g_os_is_yx_osa4_isa8_osv8_isv4: - case os_is_yx_osa2_isa8_osv16_isv4: - case g_os_is_yx_osa2_isa8_osv16_isv4: - case is_os_yx_isa4_osa8_isv8_osv4: - case is_os_yx_osa4_isa8_osv8_isv4: newDims[3] = RoundUp(newDims[3], 32); newDims[2] = RoundUp(newDims[2], 32); break; case os_is_zyx_osa4_isa8_osv8_isv4: - case g_os_is_zyx_osa4_isa8_osv8_isv4: newDims[4] = RoundUp(newDims[4], 32); newDims[3] = RoundUp(newDims[3], 32); break; - case os_is_zyx_osa2_isa8_osv8_isv2: - newDims[4] = RoundUp(newDims[4], 16); - newDims[3] = RoundUp(newDims[3], 16); - break; - case os_is_zyx_osa4_isa8_osv8_isv2: - case g_os_is_zyx_osa4_isa8_osv8_isv2: - newDims[4] = RoundUp(newDims[4], 32); - newDims[3] = RoundUp(newDims[3], 16); - break; - case os_is_yx_osa4_isa8_osv8_isv2: - case g_os_is_yx_osa4_isa8_osv8_isv2: - case os_is_yx_osa2_isa8_osv16_isv2: - case g_os_is_yx_osa2_isa8_osv16_isv2: - newDims[3] = RoundUp(newDims[3], 32); - newDims[2] = RoundUp(newDims[2], 16); - break; - case os_is_y_x8_osv8_isv4: - case os_is_y_x8_osv8_isv4_swizzled_by_4: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 4); - newDims[3] = RoundUp(newDims[3], 8); - newDims[0] = RoundUp(newDims[0], 8); - break; case os_is_yx_osv16_isv4: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 4); @@ -801,49 +661,21 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l newDims[3] = RoundUp(newDims[3], 16); newDims[4] = RoundUp(newDims[4], 16); break; - case os_is_yx_isa8_osv8_isv2: - case g_os_is_yx_isa8_osv8_isv2: - case is_os_yx_isa8_osv8_isv2: - newDims[2] = RoundUp(newDims[2], 8); - newDims[3] = RoundUp(newDims[3], 16); - break; case is_os_zyx_isv16_osv16: assert(newDims.size() == 5); newDims[3] = RoundUp(newDims[3], 16); newDims[4] = RoundUp(newDims[4], 16); break; - case is_os_yx_osv8_isv4: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 8); - newDims[3] = RoundUp(newDims[3], 4); - break; case is_os_yx_isv16_osv16: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 16); newDims[3] = RoundUp(newDims[3], 16); break; - case is_os_yx_isv16_osv8: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 8); - break; - case is_os_yx_isv16_osv4: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 4); - break; - case is_os_yx_isv16_osv2: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 2); - break; - case os_is_yx_isa8_osv16_isv2: case os_is_yx_isv8_osv16_isv2: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 16); newDims[3] = RoundUp(newDims[3], 16); break; - case os_is_zyx_isa8_osv16_isv2: case os_is_zyx_isv8_osv16_isv2: assert(newDims.size() == 5); newDims[3] = RoundUp(newDims[3], 16); @@ -853,44 +685,11 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l assert(newDims.size() == 5); newDims[3] = RoundUp(newDims[0], 16); break; - case os_is_yx_osv2_isv4: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 4); - newDims[3] = RoundUp(newDims[3], 2); - break; - case os_is_yx_osv2_isv16: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 2); - break; - case os_is_yx_osv2_isv32: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 32); - newDims[3] = RoundUp(newDims[3], 2); - break; - case os_is_yx_osv4_isv16: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 4); - break; - case os_is_yx_osv8_isv16: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 16); - newDims[3] = RoundUp(newDims[3], 8); - break; - case os_is_yx_osv4_isv2: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 2); - newDims[3] = RoundUp(newDims[3], 4); - break; case os_is_yx_osv8_isv4: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 4); newDims[3] = RoundUp(newDims[3], 8); break; - case os_i_yxs_osv4_yxsv4: - newDims[3] = RoundUp(newDims[3], 4); - break; case g_os_iyx_osv8: assert(newDims.size() == 5); newDims[3] = RoundUp(newDims[3], 8); @@ -904,14 +703,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l assert(newDims.size() == 5); newDims[3] = RoundUp(newDims[3], 32); break; - case gs_oiyx_gsv8: - assert(newDims.size() == 5); - newDims[4] = RoundUp(newDims[4], 8); - break; - case gs_oizyx_gsv8: - assert(newDims.size() == 6); - newDims[5] = RoundUp(newDims[5], 8); - break; case gs_oiyx_gsv16: assert(newDims.size() == 5); newDims[4] = RoundUp(newDims[4], 16); @@ -924,10 +715,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l assert(newDims.size() == 5); newDims[4] = RoundUp(newDims[4], 32); break; - case gs_oizyx_gsv32: - assert(newDims.size() == 6); - newDims[5] = RoundUp(newDims[5], 32); - break; case gi_yxs_os_yxsv2_osv16: assert(newDims.size() == 5); newDims[0] = RoundUp(newDims[0], 16); @@ -970,11 +757,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l case gs_oi_yxs_gsv4_yxsv4: newDims[4] = RoundUp(newDims[4], 4); break; - case os_is_yx_osv16_isv2: - assert(newDims.size() == 4); - newDims[2] = RoundUp(newDims[2], 2); - newDims[3] = RoundUp(newDims[3], 16); - break; case os_is_yx_osv16_isv16: assert(newDims.size() == 4); newDims[2] = RoundUp(newDims[2], 16); @@ -1004,16 +786,6 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l case gs_oi_yxs_gsv32_yxsv4: newDims[4] = RoundUp(newDims[4], 32); break; - case g_os_is_yx_osv8_isv2: - assert(newDims.size() == 5); - newDims[2] = RoundUp(newDims[2], 2); - newDims[3] = RoundUp(newDims[3], 8); - break; - case g_os_is_yx_osv8_isv4: - assert(newDims.size() == 5); - newDims[2] = RoundUp(newDims[2], 4); - newDims[3] = RoundUp(newDims[3], 8); - break; case g_os_is_yx_osv16_isv4: assert(newDims.size() == 5); newDims[2] = RoundUp(newDims[2], 4); @@ -1066,15 +838,12 @@ NDims WeightsTensor::GetSimpleDims(const std::vector& d, WeightsLayout l ret[3].pitch = ret[2].v * ret[2].pitch; ret[2].pad.after = newDims[2] - ret[2].v; - } else if (l == os_is_yx_isa8_osv8_isv4 || l == os_is_yx_isa8_osv8_isv4_swizzled_by_4) { + } else if (l == os_is_yx_isa8_osv8_isv4) { ret[0].pitch = 256; ret[1].pitch = ret[0].pitch * ret[0].v; } else if (l == os_is_yx_isa8_osv16_isv4) { ret[0].pitch = 512; ret[1].pitch = ret[0].pitch * ret[0].v; - } else if (l == os_i_yxs_osv4_yxsv4) { - ret[2].pitch = RoundUp(ret[0].v * ret[1].v, 4) * 4; - ret[3].pitch = ret[2].v * RoundUp(ret[0].v * ret[1].v, 4); } else if (l == gi_yxs_os_yxsv2_osv16) { ret[3].pitch = RoundUp(ret[1].v * ret[2].v, 2) * ret[1].pitch; ret[2].pad.after = newDims[2] - ret[2].v; diff --git a/src/plugins/intel_gpu/src/kernel_selector/tensor_type.h b/src/plugins/intel_gpu/src/kernel_selector/tensor_type.h index 3258fc5e8eb8a7..6fdcf75b45dd6a 100644 --- a/src/plugins/intel_gpu/src/kernel_selector/tensor_type.h +++ b/src/plugins/intel_gpu/src/kernel_selector/tensor_type.h @@ -93,11 +93,8 @@ enum WeightsLayout { oxiy, iyxo, yxio, - o_is_yx_isv2, o_is_yx_isv4, o_is_yx_isv16, - o_is_zyx_isv16, - os_yxi_osv16, os_iyx_osv16, os_iyx_osv32, os_iyx_osv8, @@ -106,12 +103,7 @@ enum WeightsLayout { os_is_zyx_isv16_osv16, is_os_zyx_isv16_osv16, is_os_yx_isv16_osv16, - is_os_yx_isv16_osv8, - is_os_yx_isv16_osv4, - is_os_yx_isv16_osv2, - os_is_zyx_isa8_osv16_isv2, // aligned os_is_zyx_isv8_osv16_isv2, - os_is_yx_isa8_osv16_isv2, // aligned os_is_yx_isv8_osv16_isv2, os_is_yx_isv16_osv16, os_zyxi_osv16, @@ -119,7 +111,6 @@ enum WeightsLayout { os_i_osv8__ai8, // TODO can we drop the alignment form layout name? os_i_osv16__ai8, os_i_osv16, - os_is_yx_osv16_isv2, os_is_yx_osv16_isv16, // weights for int8 blocked conv os_is_zyx_osv16_isv16, os_is_zyx_osv32_isv16, @@ -141,72 +132,18 @@ enum WeightsLayout { os_is_yx_isa8_osv16_isv4, // for fully connected MMAD os_is_zyx_isa8_osv16_isv4, // for fully connected MMAD os_is_yx_osa4_isa8_osv8_isv4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - is_os_yx_isa4_osa8_isv8_osv4, // for onednn deconvolution - is_os_yx_osa4_isa8_osv8_isv4, - g_os_is_yx_osa2_isa8_osv8_isv2, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - g_os_is_yx_osa4_isa8_osv8_isv4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - g_os_is_zyx_osa4_isa8_osv8_isv4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - g_os_is_zyx_isa8_osv8_isv2, - g_os_is_zyx_isa8_osv8_isv4, - os_is_yx_osa4_isa8_osv8_isv2, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - os_is_zyx_osa4_isa8_osv8_isv2, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, os_is_zyx_osa4_isa8_osv8_isv4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - g_os_is_yx_osa4_isa8_osv8_isv2, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - g_os_is_zyx_osa4_isa8_osv8_isv2, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - os_is_yx_osa2_isa8_osv8_isv2, - os_is_zyx_osa2_isa8_osv8_isv2, - os_is_yx_osa2_isa8_osv16_isv4, - os_is_yx_osa2_isa8_osv16_isv2, - os_is_zyx_isa8_osv8_isv2, - is_os_zyx_isa8_osv8_isv2, - is_os_zyx_isa8_osv8_isv4, - os_is_yx_isa8_osv8_isv2, - is_os_yx_isa8_osv8_isv2, - is_os_yx_isa8_osv8_isv4, - is_os_yx_osv8_isv4, - is_os_yx_osa8_isv16_osv4, - is_os_yx_isa2_osa8_isv8_osv2, - g_os_is_yx_osa2_isa8_osv16_isv4, - g_os_is_yx_osa2_isa8_osv16_isv2, os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, // 1,5... os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, // 1,5... - os_is_yx_isa8_osv8_isv4_swizzled_by_4, // for MMAD convolution swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - // 1,5... - is_o_yx_isv32, // for MMAD 1x1 convolutions - is_o32_yx_isv32_swizzled_by_4, // for MMAD 1x1 convolutions swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, 1,5... - os_is_y_x8_osv8_isv4, // for MMAD convolutions - os_is_y_x8_osv8_isv4_swizzled_by_4, // for MMAD 1x1 convolutions swizzled from ofm 0..7 to 0,4,8,12,16,20,24,28, - // 1,5... os_is_yx_osv16_isv4, // swizzled weights for convolution using IMAD os_is_yx_osv8_isv4, // weights for int8 blocked conv - os_is_zyx_osv8_isv4, // weights for int8 blocked 3d conv - os_is_yx_osv8_isv2, // weights for int8 blocked conv - os_is_zyx_osv8_isv2, // weights for int8 blocked 3d conv os_is_yx_osv32_isv4_swizzled_by_2, // weights for bfyx -> b_fs_yx_fsv32 convolution using IMAD with swizzled ofm (0, 2, 4..), (1, 3, 5...) os_is_yx_osv32_isv4, // weights for bfyx -> b_fs_yx_fsv{32,16} convolution using IMAD os_is_zyx_osv32_isv4, // weights for bfzyx -> b_fs_zyx_fsv16 convolution using IMAD - os_is_yx_osv2_isv4, - os_is_yx_osv2_isv16, - os_is_yx_osv2_isv32, - os_is_yx_osv4_isv16, - os_is_yx_osv8_isv16, - os_is_yx_osv4_isv2, oizyx, iozyx, - os_is_osv32_isv32_swizzled_by_4, // for weights for 1x1 IMAD convolution - os_i_yxs_osv4_yxsv4, // for weights for depthwise IMAD convolution - os_y_is_x_osv8_isv2, - os_y_is_x_osv8_isv4, - os_y_is_x_osv16_isv4, - os_yx_is_osv8_isv2, - os_yx_is_osv8_isv4, - os_yx_is_osv16_isv2, - os_zyx_is_osv8_isv2, - os_zyx_is_osv8_isv4, - os_zy_is_x_osv8_isv2, - os_zy_is_x_osv8_isv4, goiyx, gioyx, goizyx, @@ -215,25 +152,16 @@ enum WeightsLayout { g_os_iyx_osv8, g_os_iyx_osv16, g_os_iyx_osv32, - gs_oiyx_gsv8, - gs_oizyx_gsv8, gs_oiyx_gsv16, gs_oizyx_gsv16, gs_oiyx_gsv32, - gs_oizyx_gsv32, g_os_iyx_osv16_rotate_180, gi_yxs_os_yxsv2_osv16, g_is_os_zyx_isv16_osv16, g_is_os_yx_isv16_osv16, - g_os_is_yx_isa8_osv8_isv2, - g_os_is_yx_isa8_osv8_isv4, g_os_is_zyx_isv8_osv16_isv2, g_os_is_yx_isv8_osv16_isv2, g_os_is_zyx_isv16_osv16, - g_os_zy_is_x_osv8_isv2, - g_os_zy_is_x_osv8_isv4, - g_os_zyx_is_osv8_isv2, - g_os_zyx_is_osv8_isv4, g_os_is_zyx_osv16_isv16, giy_xs_os_xsv2_osv16__ao32, giy_xs_os_xsv2_osv8__ao32, @@ -241,8 +169,6 @@ enum WeightsLayout { gs_oi_yxs_gsv4_yxsv4, // grouped weights for depthwise IMAD convolution (b_fs_yx_fsv4 format) gs_oi_yxs_gsv16_yxsv4, // grouped weights for depthwise IMAD convolution (b_fs_yx_fsv16 format) gs_oi_yxs_gsv32_yxsv4, // grouped weights for depthwise IMAD convolution (b_fs_yx_fsv32 format) - g_os_is_yx_osv8_isv2, - g_os_is_yx_osv8_isv4, g_os_is_yx_osv16_isv4, g_os_zyx_is_osv16_isv4, @@ -252,12 +178,6 @@ enum WeightsLayout { g_os_zyx_is_osv32_isv16, g_os_zyx_is_osv32_isv32, - g_os_yx_is_osv8_isv2, - g_os_yx_is_osv8_isv4, - g_os_yx_is_osv16_isv2, - g_os_y_is_x_osv8_isv2, - g_os_y_is_x_osv8_isv4, - WeightsLayoutCount // NUMBER OF ELEMENTS IN ENUM }; diff --git a/src/plugins/intel_gpu/src/runtime/format.cpp b/src/plugins/intel_gpu/src/runtime/format.cpp index 45060131c7578f..784956956f2848 100644 --- a/src/plugins/intel_gpu/src/runtime/format.cpp +++ b/src/plugins/intel_gpu/src/runtime/format.cpp @@ -84,11 +84,8 @@ static const std::map format_traits_map { FMT_TRAITS(oizyx, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {}), FMT_TRAITS(iozyx, 1, 1, 3, 0, {1, 0, 2, 3, 4}, "iozyx", "oixyz", {}), FMT_TRAITS(os_is_yx_isv16_osv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 16}, {0, 16}}), - FMT_TRAITS(o_is_yx_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 2}}), FMT_TRAITS(o_is_yx_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 4}}), FMT_TRAITS(o_is_yx_isv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 16}}), - FMT_TRAITS(o_is_zyx_isv16, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 16}}), - FMT_TRAITS(os_yxi_osv16, 1, 1, 2, 0, {0, 2, 3, 1}, "oyxi", "oixy", {{0, 16}}), FMT_TRAITS(os_iyx_osv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 16}}), FMT_TRAITS(os_iyx_osv32, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 32}}), FMT_TRAITS(os_iyx_osv64, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 64}}), @@ -100,65 +97,27 @@ static const std::map format_traits_map { FMT_TRAITS(image_2d_weights_c4_fyx_b, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {}), FMT_TRAITS(image_2d_weights_c1_b_fyx, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {}), FMT_TRAITS(os_is_yx_isa8_osv16_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 8}, {0, 16}, {1, 4}}), - FMT_TRAITS(os_is_yx_osa4_isa8_osv8_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 4}, {1, 8}, {0, 8}, {1, 2}}), FMT_TRAITS(os_is_yx_osa4_isa8_osv8_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 4}, {1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(os_is_zyx_osa4_isa8_osv8_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 4}, {1, 8}, {0, 8}, {1, 2}}), FMT_TRAITS(os_is_zyx_osa4_isa8_osv8_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 4}, {1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(os_is_yx_osa2_isa8_osv16_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 8}, {0, 16}, {1, 2}}), - FMT_TRAITS(os_is_yx_osa2_isa8_osv16_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 8}, {0, 16}, {1, 4}}), - FMT_TRAITS(os_is_yx_osa2_isa8_osv8_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(os_is_zyx_osa2_isa8_osv8_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 2}, {1, 8}, {0, 8}, {1, 2}}), FMT_TRAITS(os_is_zyx_isa8_osv8_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 8}, {1, 4}}), FMT_TRAITS(os_is_zyx_isa8_osv16_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 16}, {1, 4}}), FMT_TRAITS(os_is_yx_osa4_isa8_osv8_isv4_swizzled_by_4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 32}, {1, 32}}), FMT_TRAITS(os_is_zyx_osa4_isa8_osv8_isv4_swizzled_by_4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 32}, {1, 32}}), - FMT_TRAITS(is_os_yx_osa4_isa8_osv8_isv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{0, 4}, {1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(is_os_yx_isa2_osa8_isv8_osv2, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 2}, {0, 8}, {1, 8}, {0, 2}}), - FMT_TRAITS(is_os_yx_isa4_osa8_isv8_osv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 4}, {0, 8}, {1, 8}, {0, 4}}), - FMT_TRAITS(is_o_yx_isv32, 1, 1, 2, 0, {1, 0, 2, 3}, "oyxi", "oixy", {{1, 32}}), - FMT_TRAITS(is_o32_yx_isv32_swizzled_by_4, 1, 1, 2, 0, {0, 1, 2, 3}, "oyxi", "oixy", {{0, 32}, {1, 32}}), - FMT_TRAITS(os_is_y_x8_osv8_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oyxi", "oixy", {{0, 8}, {1, 4}, {2, 8}}), - FMT_TRAITS(os_is_y_x8_osv8_isv4_swizzled_by_4, 1, 1, 2, 0, {0, 1, 2, 3}, "oyxi", "oixy", {{0, 8}, {1, 4}, {2, 8}}), - FMT_TRAITS(os_is_yx_osv2_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 4}}), - FMT_TRAITS(os_is_yx_osv2_isv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 16}}), - FMT_TRAITS(os_is_yx_osv2_isv32, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 2}, {1, 32}}), - FMT_TRAITS(os_is_yx_osv4_isv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 4}, {1, 16}}), - FMT_TRAITS(os_is_yx_osv8_isv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 8}, {1, 16}}), - FMT_TRAITS(os_is_yx_osv4_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 4}, {1, 2}}), FMT_TRAITS(os_is_yx_osv16_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 16}, {1, 4}}), FMT_TRAITS(os_is_yx_osv8_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 8}, {1, 4}}), - FMT_TRAITS(os_is_zyx_osv8_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 8}, {1, 4}}), - FMT_TRAITS(os_is_yx_osv8_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 8}, {1, 2}}), - FMT_TRAITS(os_is_zyx_osv8_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 8}, {1, 2}}), FMT_TRAITS(os_is_zyx_osv16_isv16, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 16}, {1, 16}}), FMT_TRAITS(os_is_yx_osv32_isv4_swizzled_by_2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 32}, {1, 4}}), FMT_TRAITS(os_is_yx_osv32_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 32}, {1, 4}}), FMT_TRAITS(os_is_zyx_osv32_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 32}, {1, 4}}), FMT_TRAITS(os_is_zyx_isv16_osv16, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 16}, {0, 16}}), FMT_TRAITS(is_os_zyx_isv16_osv16, 1, 1, 3, 0, {1, 0, 2, 3, 4}, "iozyx", "oixyz", {{1, 16}, {0, 16}}), - FMT_TRAITS(is_os_yx_osv8_isv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{0, 8}, {1, 4}}), FMT_TRAITS(is_os_yx_isv16_osv16, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 16}, {0, 16}}), - FMT_TRAITS(is_os_yx_isv16_osv8, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 16}, {0, 8}}), - FMT_TRAITS(is_os_yx_isv16_osv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 16}, {0, 4}}), - FMT_TRAITS(is_os_yx_isv16_osv2, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 16}, {0, 2}}), - FMT_TRAITS(is_os_zyx_isa8_osv8_isv2, 1, 1, 3, 0, {1, 0, 2, 3, 4}, "iozyx", "oixyz", {{1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(is_os_zyx_isa8_osv8_isv4, 1, 1, 3, 0, {1, 0, 2, 3, 4}, "iozyx", "oixyz", {{1, 8}, {0, 8}, {1, 4}}), FMT_TRAITS(os_is_zyx_isa8_osv8_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(os_is_zyx_isa8_osv8_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 8}, {1, 2}}), FMT_TRAITS(os_is_zyx_isa8_osv16_isv4, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 16}, {1, 4}}), - FMT_TRAITS(is_os_yx_isa8_osv8_isv2, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(is_os_yx_isa8_osv8_isv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(is_os_yx_osa8_isv16_osv4, 1, 1, 2, 0, {1, 0, 2, 3}, "ioyx", "oixy", {{0, 8}, {1, 16}, {0, 4}}), FMT_TRAITS(os_is_yx_isa8_osv8_isv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(os_is_yx_isa8_osv8_isv4_swizzled_by_4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 32}, {0, 32}}), - FMT_TRAITS(os_is_yx_isa8_osv8_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(os_is_osv32_isv32_swizzled_by_4, 1, 1, 0, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 32}, {1, 32}}), - FMT_TRAITS(os_is_zyx_isa8_osv16_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 16}, {1, 2}}), // aligned FMT_TRAITS(os_is_zyx_isv8_osv16_isv2, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{1, 8}, {0, 16}, {1, 2}}), FMT_TRAITS(os_zyxi_osv16, 1, 1, 3, 0, {0, 2, 3, 4, 1}, "ozyxi", "oixyz", {{0, 16}}), - FMT_TRAITS(os_is_yx_isa8_osv16_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 8}, {0, 16}, {1, 2}}), // aligned FMT_TRAITS(os_is_yx_isv8_osv16_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{1, 8}, {0, 16}, {1, 2}}), - FMT_TRAITS(os_is_yx_osv16_isv2, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 16}, {1, 2}}), FMT_TRAITS(os_is_yx_osv16_isv16, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 16}, {1, 16}}), FMT_TRAITS(os_is_zyx_osv32_isv16, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 32}, {1, 16}}), FMT_TRAITS(os_is_zyx_osv64_isv16, 1, 1, 3, 0, {0, 1, 2, 3, 4}, "oizyx", "oixyz", {{0, 64}, {1, 16}}), @@ -167,20 +126,9 @@ static const std::map format_traits_map { FMT_TRAITS(i_yxs_os_yxsv2_osv16, 1, 1, 2, 0, {1, 2, 3, 0}, "iyxo", "oixy", {{0, 16}}), FMT_TRAITS(iy_xs_os_xsv2_osv8__ao32, 1, 1, 2, 0, {1, 2, 3, 0}, "iyxo", "oixy", {{2, 2}, {0, 8}}), FMT_TRAITS(iy_xs_os_xsv2_osv16__ao32, 1, 1, 2, 0, {1, 2, 3, 0}, "iyxo", "oixy", {{2, 2}, {0, 16}}), - FMT_TRAITS(os_i_yxs_osv4_yxsv4, 1, 1, 2, 0, {0, 1, 2, 3}, "oiyx", "oixy", {{0, 4}}), FMT_TRAITS(os_i_osv16, 1, 1, 0, 0, {0, 1}, "oi", "oi", {{0, 16}}), FMT_TRAITS(os_i_osv16__ai8, 1, 1, 0, 0, {0, 1}, "oi", "oi", {{1, 8}, {0, 16}}), FMT_TRAITS(os_i_osv8__ai8, 1, 1, 0, 0, {0, 1}, "oi", "oi", {{1, 8}, {0, 8}}), - FMT_TRAITS(os_y_is_x_osv8_isv2, 1, 1, 2, 0, {0, 2, 1, 3}, "oyix", "oixy", {{0, 8}, {1, 2}}), - FMT_TRAITS(os_y_is_x_osv8_isv4, 1, 1, 2, 0, {0, 2, 1, 3}, "oyix", "oixy", {{0, 8}, {1, 4}}), - FMT_TRAITS(os_y_is_x_osv16_isv4, 1, 1, 2, 0, {0, 2, 1, 3}, "oyix", "oixy", {{0, 16}, {1, 4}}), - FMT_TRAITS(os_yx_is_osv8_isv2, 1, 1, 2, 0, {0, 2, 3, 1}, "oyxi", "oixy", {{0, 8}, {1, 2}}), - FMT_TRAITS(os_yx_is_osv8_isv4, 1, 1, 2, 0, {0, 2, 3, 1}, "oyxi", "oixy", {{0, 8}, {1, 4}}), - FMT_TRAITS(os_yx_is_osv16_isv2, 1, 1, 2, 0, {0, 2, 3, 1}, "oyxi", "oixy", {{0, 16}, {1, 2}}), - FMT_TRAITS(os_zyx_is_osv8_isv2, 1, 1, 3, 0, {0, 2, 3, 4, 1}, "ozyxi", "oixyz", {{0, 8}, {1, 2}}), - FMT_TRAITS(os_zyx_is_osv8_isv4, 1, 1, 3, 0, {0, 2, 3, 4, 1}, "ozyxi", "oixyz", {{0, 8}, {1, 4}}), - FMT_TRAITS(os_zy_is_x_osv8_isv2, 1, 1, 3, 0, {0, 2, 3, 1, 4}, "ozyix", "oixyz", {{0, 8}, {1, 2}}), - FMT_TRAITS(os_zy_is_x_osv8_isv4, 1, 1, 3, 0, {0, 2, 3, 1, 4}, "ozyix", "oixyz", {{0, 8}, {1, 4}}), FMT_TRAITS(goiyx, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {}), FMT_TRAITS(gioyx, 1, 1, 2, 1, {0, 2, 1, 3, 4}, "gioyx", "oixy????g", {}), @@ -189,24 +137,15 @@ static const std::map format_traits_map { FMT_TRAITS(g_os_iyx_osv8, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 8}}), FMT_TRAITS(g_os_iyx_osv16, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 16}}), FMT_TRAITS(g_os_iyx_osv32, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 32}}), - FMT_TRAITS(gs_oiyx_gsv8, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 8}}), - FMT_TRAITS(gs_oizyx_gsv8, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{8, 8}}), FMT_TRAITS(gs_oiyx_gsv16, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 16}}), FMT_TRAITS(gs_oizyx_gsv16, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{8, 16}}), FMT_TRAITS(gs_oiyx_gsv32, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 32}}), - FMT_TRAITS(gs_oizyx_gsv32, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{8, 32}}), FMT_TRAITS(gyxio, 1, 1, 2, 1, {0, 3, 4, 2, 1}, "gyxio", "oixy????g", {}), FMT_TRAITS(g_is_os_zyx_isv16_osv16, 1, 1, 3, 1, {0, 2, 1, 3, 4, 5}, "giozyx", "oixyz???g", {{1, 16}, {0, 16}}), FMT_TRAITS(g_is_os_yx_isv16_osv16, 1, 1, 2, 1, {0, 2, 1, 3, 4}, "gioyx", "oixy????g", {{1, 16}, {0, 16}}), FMT_TRAITS(g_os_is_zyx_isv8_osv16_isv2, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{1, 8}, {0, 16}, {1, 2}}), FMT_TRAITS(g_os_is_yx_isv8_osv16_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{1, 8}, {0, 16}, {1, 2}}), FMT_TRAITS(g_os_is_zyx_isv16_osv16, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{0, 16}, {1, 16}}), - FMT_TRAITS(g_os_zy_is_x_osv8_isv2, 1, 1, 3, 1, {0, 1, 3, 4, 2, 5}, "gozyix", "oixyz???g", {{0, 8}, {1, 2}}), - FMT_TRAITS(g_os_zy_is_x_osv8_isv4, 1, 1, 3, 1, {0, 1, 3, 4, 2, 5}, "gozyix", "oixyz???g", {{0, 8}, {1, 4}}), - FMT_TRAITS(g_os_zyx_is_osv8_isv2, 1, 1, 3, 1, {0, 1, 3, 4, 5, 2}, "gozyxi", "oixyz???g", {{0, 8}, {1, 2}}), - FMT_TRAITS(g_os_zyx_is_osv8_isv4, 1, 1, 3, 1, {0, 1, 3, 4, 5, 2}, "gozyxi", "oixyz???g", {{0, 8}, {1, 4}}), - FMT_TRAITS(g_os_is_yx_osv8_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_yx_osv8_isv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 8}, {1, 4}}), FMT_TRAITS(g_os_is_yx_osv16_isv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 16}, {1, 4}}), FMT_TRAITS(g_os_is_zyx_osv16_isv16, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{0, 16}, {1, 16}}), FMT_TRAITS(g_os_zyx_is_osv16_isv4, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "gozyxi", "oixyz???g", {{0, 16}, {1, 4}}), @@ -215,17 +154,6 @@ static const std::map format_traits_map { FMT_TRAITS(g_os_zyx_is_osv32_isv4, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "gozyxi", "oixyz???g", {{0, 32}, {1, 4}}), FMT_TRAITS(g_os_zyx_is_osv32_isv16, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "gozyxi", "oixyz???g", {{0, 32}, {1, 16}}), FMT_TRAITS(g_os_zyx_is_osv32_isv32, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "gozyxi", "oixyz???g", {{0, 32}, {1, 32}}), - FMT_TRAITS(g_os_is_yx_isa8_osv8_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_yx_isa8_osv8_isv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(g_os_is_zyx_isa8_osv8_isv2, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_zyx_isa8_osv8_isv4, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(g_os_is_yx_osa2_isa8_osv8_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 2}, {1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_yx_osa4_isa8_osv8_isv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 4}, {1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(g_os_is_zyx_osa4_isa8_osv8_isv4, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{0, 4}, {1, 8}, {0, 8}, {1, 4}}), - FMT_TRAITS(g_os_is_yx_osa4_isa8_osv8_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 4}, {1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_zyx_osa4_isa8_osv8_isv2, 1, 1, 3, 1, {0, 1, 2, 3, 4, 5}, "goizyx", "oixyz???g", {{0, 4}, {1, 8}, {0, 8}, {1, 2}}), - FMT_TRAITS(g_os_is_yx_osa2_isa8_osv16_isv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 2}, {1, 8}, {0, 16}, {1, 4}}), - FMT_TRAITS(g_os_is_yx_osa2_isa8_osv16_isv2, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{0, 2}, {1, 8}, {0, 16}, {1, 2}}), FMT_TRAITS(gs_oi_yxs_gsv4_yxsv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 4}}), FMT_TRAITS(gs_oi_yxs_gsv16_yxsv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 16}}), FMT_TRAITS(gs_oi_yxs_gsv32_yxsv4, 1, 1, 2, 1, {0, 1, 2, 3, 4}, "goiyx", "oixy????g", {{8, 32}}), @@ -233,11 +161,6 @@ static const std::map format_traits_map { FMT_TRAITS(gi_yxs_os_yxsv2_osv16, 1, 1, 2, 1, {0, 2, 3, 4, 1}, "giyxo", "oixy????g", {{0, 16}}), FMT_TRAITS(giy_xs_os_xsv2_osv8__ao32, 1, 1, 2, 1, {0, 2, 3, 4, 1}, "giyxo", "oixy????g", {{2, 2}, {0, 8}}), FMT_TRAITS(giy_xs_os_xsv2_osv16__ao32, 1, 1, 2, 1, {0, 2, 3, 4, 1}, "giyxo", "oixy????g", {{2, 2}, {0, 16}}), - FMT_TRAITS(g_os_yx_is_osv8_isv2, 1, 1, 2, 1, {0, 1, 3, 4, 2}, "goyxi", "oixy????g", {{0, 8}, {1, 2}}), - FMT_TRAITS(g_os_yx_is_osv8_isv4, 1, 1, 2, 1, {0, 1, 3, 4, 2}, "goyxi", "oixy????g", {{0, 8}, {1, 4}}), - FMT_TRAITS(g_os_yx_is_osv16_isv2, 1, 1, 2, 1, {0, 1, 3, 4, 2}, "goyxi", "oixy????g", {{0, 16}, {1, 4}}), - FMT_TRAITS(g_os_y_is_x_osv8_isv2, 1, 1, 2, 1, {0, 1, 3, 2, 4}, "goyix", "oixy????g", {{0, 8}, {1, 2}}), - FMT_TRAITS(g_os_y_is_x_osv8_isv4, 1, 1, 2, 1, {0, 1, 3, 2, 4}, "goyix", "oixy????g", {{0, 8}, {1, 4}}), }; const format_traits& format::traits(type fmt) { diff --git a/src/plugins/intel_gpu/src/runtime/layout.cpp b/src/plugins/intel_gpu/src/runtime/layout.cpp index 9b196e203d0d33..021d36b17c53b7 100644 --- a/src/plugins/intel_gpu/src/runtime/layout.cpp +++ b/src/plugins/intel_gpu/src/runtime/layout.cpp @@ -365,16 +365,6 @@ size_t layout::get_linear_size() const { } else if (this->format == cldnn::format::os_is_yx_isa8_osv16_isv4 && (!(is_aligned_to(sizes[0], 16)) || !(is_aligned_to(sizes[1], 32)))) { sizes[0] = align_to(sizes[0], 16); sizes[1] = align_to(sizes[1], 32); - } else if (this->format == cldnn::format::os_is_yx_isa8_osv8_isv4_swizzled_by_4 && (!(is_aligned_to(sizes[0], 32)) || !(is_aligned_to(sizes[1], 32)))) { - sizes[0] = align_to(sizes[0], 32); - sizes[1] = align_to(sizes[1], 32); - } else if (this->format == cldnn::format::is_o32_yx_isv32_swizzled_by_4 && (!is_aligned_to(sizes[1], 32) || !(is_aligned_to(sizes[0], 32)))) { - sizes[0] = align_to(sizes[0], 32); - sizes[1] = align_to(sizes[1], 32); - } else if (this->format == cldnn::format::os_is_y_x8_osv8_isv4 || this->format == cldnn::format::os_is_y_x8_osv8_isv4_swizzled_by_4) { - sizes[1] = align_to(sizes[1], 4); - sizes[0] = align_to(sizes[0], 8); - sizes[2] = align_to(sizes[2], 8); } else if (this->format == cldnn::format::image_2d_rgba) { sizes[1] = 4; } else if (this->format == cldnn::format::gs_oi_yxs_gsv4_yxsv4 || @@ -394,10 +384,8 @@ size_t layout::get_linear_size() const { } else if (this->format == cldnn::format::i_yxs_os_yxsv2_osv16 || this->format == cldnn::format::gi_yxs_os_yxsv2_osv16) { sizes[3] = align_to(sizes[2] * sizes[3], 2); sizes[2] = 1; - } else if (this->format == cldnn::format::os_i_yxs_osv4_yxsv4) { - sizes[3] = align_to(sizes[2] * sizes[3], 4); - sizes[2] = 1; } + size_t total = std::accumulate( sizes.begin(), sizes.end(), diff --git a/src/plugins/intel_gpu/tests/unit/module_tests/format_test.cpp b/src/plugins/intel_gpu/tests/unit/module_tests/format_test.cpp index f55ef0dc419031..0c20b757c88e21 100644 --- a/src/plugins/intel_gpu/tests/unit/module_tests/format_test.cpp +++ b/src/plugins/intel_gpu/tests/unit/module_tests/format_test.cpp @@ -118,32 +118,12 @@ INSTANTIATE_TEST_SUITE_P(smoke, axes_test_format, testing::ValuesIn(std::vector{ {format::os_is_yx_isa8_osv8_isv4, {{1, 8}, {0, 8}, {1, 4}}, {{1, 32}, {0, 8}}}, {format::os_is_yx_isa8_osv16_isv4, {{1, 8}, {0, 16}, {1, 4}}, {{1, 32}, {0, 16}}}, - {format::os_is_yx_osa4_isa8_osv8_isv2, {{0, 4}, {1, 8}, {0, 8}, {1, 2}}, {{0, 32}, {1, 16}}}, {format::os_is_yx_osa4_isa8_osv8_isv4, {{0, 4}, {1, 8}, {0, 8}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::os_is_zyx_osa4_isa8_osv8_isv2, {{0, 4}, {1, 8}, {0, 8}, {1, 2}}, {{0, 32}, {1, 16}}}, {format::os_is_zyx_osa4_isa8_osv8_isv4, {{0, 4}, {1, 8}, {0, 8}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::os_is_yx_osa2_isa8_osv16_isv2, {{0, 2}, {1, 8}, {0, 16}, {1, 2}}, {{0, 32}, {1, 16}}}, - {format::os_is_yx_osa2_isa8_osv16_isv4, {{0, 2}, {1, 8}, {0, 16}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::os_is_yx_osa2_isa8_osv8_isv2, {{0, 2}, {1, 8}, {0, 8}, {1, 2}}, {{0, 16}, {1, 16}}}, - {format::os_is_zyx_osa2_isa8_osv8_isv2, {{0, 2}, {1, 8}, {0, 8}, {1, 2}}, {{0, 16}, {1, 16}}}, {format::os_is_zyx_isa8_osv8_isv4, {{1, 8}, {0, 8}, {1, 4}}, {{1, 32}, {0, 8}}}, {format::os_is_zyx_isa8_osv16_isv4, {{1, 8}, {0, 16}, {1, 4}}, {{1, 32}, {0, 16}}}, - {format::is_os_yx_osa4_isa8_osv8_isv4, {{0, 4}, {1, 8}, {0, 8}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::is_os_yx_isa2_osa8_isv8_osv2, {{1, 2}, {0, 8}, {1, 8}, {0, 2}}, {{1, 16}, {0, 16}}}, - {format::is_os_yx_isa4_osa8_isv8_osv4, {{1, 4}, {0, 8}, {1, 8}, {0, 4}}, {{1, 32}, {0, 32}}}, {format::os_is_yx_osv8_isv4, {{0, 8}, {1, 4}}, {{0, 8}, {1, 4}}}, - {format::os_is_zyx_osv8_isv4, {{0, 8}, {1, 4}}, {{0, 8}, {1, 4}}}, - {format::os_is_yx_osv8_isv2, {{0, 8}, {1, 2}}, {{0, 8}, {1, 2}}}, - {format::os_is_zyx_osv8_isv2, {{0, 8}, {1, 2}}, {{0, 8}, {1, 2}}}, - {format::g_os_is_yx_osa2_isa8_osv8_isv2, {{0, 2}, {1, 8}, {0, 8}, {1, 2}}, {{0, 16}, {1, 16}}}, - {format::g_os_is_yx_osa4_isa8_osv8_isv4, {{0, 4}, {1, 8}, {0, 8}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::g_os_is_zyx_osa4_isa8_osv8_isv4, {{0, 4}, {1, 8}, {0, 8}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::g_os_is_yx_osa4_isa8_osv8_isv2, {{0, 4}, {1, 8}, {0, 8}, {1, 2}}, {{0, 32}, {1, 16}}}, - {format::g_os_is_zyx_osa4_isa8_osv8_isv2, {{0, 4}, {1, 8}, {0, 8}, {1, 2}}, {{0, 32}, {1, 16}}}, - {format::g_os_is_yx_osa2_isa8_osv16_isv4, {{0, 2}, {1, 8}, {0, 16}, {1, 4}}, {{0, 32}, {1, 32}}}, - {format::g_os_is_yx_osa2_isa8_osv16_isv2, {{0, 2}, {1, 8}, {0, 16}, {1, 2}}, {{0, 32}, {1, 16}}}, {format::gs_oiyx_gsv32, {{8, 32}}, {{8, 32}}}, - {format::gs_oizyx_gsv32, {{8, 32}}, {{8, 32}}}, {format::gs_oiyx_gsv16, {{8, 16}}, {{8, 16}}}, {format::gs_oizyx_gsv16, {{8, 16}}, {{8, 16}}}, }), diff --git a/src/plugins/intel_gpu/tests/unit/module_tests/layout_test.cpp b/src/plugins/intel_gpu/tests/unit/module_tests/layout_test.cpp index e92d9b8c2c4ee3..2c2fa3ead3014e 100644 --- a/src/plugins/intel_gpu/tests/unit/module_tests/layout_test.cpp +++ b/src/plugins/intel_gpu/tests/unit/module_tests/layout_test.cpp @@ -180,8 +180,6 @@ INSTANTIATE_TEST_SUITE_P(smoke, weights_layout_test, {data_types::f32, format::goiyx, {4, 2, 15, 3, 5}, {4, 2, 15, 3, 5}, {0, 1, 2, 3, 4}}, {data_types::f32, format::goizyx, {4, 2, 15, 3, 5, 6}, {4, 2, 15, 3, 5, 6}, {0, 1, 2, 3, 4, 5}}, {data_types::f32, format::giozyx, {4, 2, 15, 3, 5, 6}, {4, 2, 15, 3, 5, 6}, {0, 2, 1, 3, 4, 5}}, - {data_types::f32, format::g_os_is_yx_osa2_isa8_osv16_isv2, {4, 2, 15, 3, 5}, {4, 32, 16, 3, 5}, {0, 1, 2, 3, 4}}, - {data_types::f32, format::g_os_is_zyx_osa4_isa8_osv8_isv4, {4, 2, 15, 3, 5, 6}, {4, 32, 32, 3, 5, 6}, {0, 1, 2, 3, 4, 5}}, })); @@ -237,12 +235,8 @@ INSTANTIATE_TEST_SUITE_P(smoke, layout_cmp_test, layout{ov::PartialShape{1, 2, 1, 1}, data_types::f16, format::b_fs_yx_fsv16}, false, false}, {layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::os_is_zyx_isv16_osv16}, layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::is_os_zyx_isv16_osv16}, false, false}, - {layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::g_os_yx_is_osv8_isv2}, - layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::g_os_y_is_x_osv8_isv2}, false, false}, {layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::goiyx}, layout{ov::PartialShape{4, 2, 3, 4, 5}, data_types::f16, format::gioyx}, false, false}, - {layout{ov::PartialShape{9, 17, 3, 2, 5}, data_types::f16, format::is_os_zyx_isa8_osv8_isv2}, - layout{ov::PartialShape{9, 17, 3, 2, 5}, data_types::f16, format::os_is_zyx_isa8_osv8_isv2}, false, false}, })); struct layouts_transform_test_params { @@ -346,10 +340,6 @@ INSTANTIATE_TEST_SUITE_P(smoke, layout_convert_test, {format::ioyx, ov::PartialShape{1, 2, 3, 4}, false}, {format::os_i_osv16__ai8, ov::PartialShape{1, 2}, false}, {format::os_iyx_osv16, ov::PartialShape{1, 2, 3, 4}, false}, - {format::os_i_yxs_osv4_yxsv4, ov::PartialShape{1, 2, 3, 4}, false}, - {format::os_is_yx_isa8_osv8_isv2, ov::PartialShape{1, 2, 3, 4}, false}, - {format::is_os_yx_isa2_osa8_isv8_osv2, ov::PartialShape{1, 2, 3, 4}, false}, - {format::is_o32_yx_isv32_swizzled_by_4, ov::PartialShape{1, 2, 3, 4}, false}, // 4D formats grouped {format::bfzyx, ov::PartialShape{1, 2, 3, 4, 5}, true}, {format::goiyx, ov::PartialShape{1, 2, 3, 4, 5}, false}, @@ -362,15 +352,12 @@ INSTANTIATE_TEST_SUITE_P(smoke, layout_convert_test, {format::iozyx, ov::PartialShape{1, 2, 3, 4, 5}, false}, {format::os_is_zyx_isa8_osv16_isv4, ov::PartialShape{1, 2, 3, 4, 5}, false}, {format::os_is_zyx_osa4_isa8_osv8_isv4, ov::PartialShape{1, 2, 3, 4, 5}, false}, - {format::is_os_zyx_isa8_osv8_isv2, ov::PartialShape{1, 2, 3, 4, 5}, false}, {format::is_os_zyx_isv16_osv16, ov::PartialShape{1, 2, 3, 4, 5}, false}, // 5D formats grouped {format::bfwzyx, ov::PartialShape{1, 2, 3, 4, 5, 6}, true}, {format::giozyx, ov::PartialShape{1, 2, 3, 4, 5, 6}, false}, - {format::gs_oizyx_gsv32, ov::PartialShape{1, 2, 3, 4, 5, 6}, false}, {format::g_os_zyx_is_osv32_isv32, ov::PartialShape{1, 2, 3, 4, 5, 6}, false}, {format::g_is_os_zyx_isv16_osv16, ov::PartialShape{1, 2, 3, 4, 5, 6}, false}, - {format::g_os_is_zyx_osa4_isa8_osv8_isv2, ov::PartialShape{1, 2, 3, 4, 5, 6}, false}, })); struct custom_layout_test_params { diff --git a/src/plugins/intel_gpu/tests/unit/onednn/utils_test.cpp b/src/plugins/intel_gpu/tests/unit/onednn/utils_test.cpp index 14edec0377f443..4b41a9a601499a 100644 --- a/src/plugins/intel_gpu/tests/unit/onednn/utils_test.cpp +++ b/src/plugins/intel_gpu/tests/unit/onednn/utils_test.cpp @@ -162,9 +162,6 @@ INSTANTIATE_TEST_SUITE_P(smoke, weight_format_test_match_dnnl, testing::ValuesIn(std::vector{ {{1, 3, 8, 8}, dnnl::memory::data_type::f16, dnnl::memory::format_tag::abcd, cldnn::format::oiyx}, {{16, 16, 8, 8}, dnnl::memory::data_type::u8, dnnl::memory::format_tag::ABcd16b16a, cldnn::format::os_is_yx_isv16_osv16}, - {{8, 4, 16, 16, 16}, dnnl::memory::data_type::f16, dnnl::memory::format_tag::ABcde8a4b, cldnn::format::os_is_zyx_osv8_isv4}, - {{16, 16, 8, 8}, dnnl::memory::data_type::f16, dnnl::memory::format_tag::ABcd2a8b8a2b, cldnn::format::os_is_yx_osa2_isa8_osv8_isv2}, - {{32, 32, 8, 8}, dnnl::memory::data_type::u8, dnnl::memory::format_tag::BAcd4b8a8b4a, cldnn::format::is_os_yx_isa4_osa8_isv8_osv4}, }), weight_format_test_match_dnnl::PrintToString);