diff options
author | Gian Marco Iodice <gianmarco.iodice@arm.com> | 2018-03-22 11:24:56 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:49:16 +0000 |
commit | 247f52cfe337f7b2542b900e3d8cf122e9d4f11c (patch) | |
tree | bcbabb7f1eea588a5d37566829763506d328e7a9 /arm_compute/core/Types.h | |
parent | eb8a399ba655b85c6854676832eb11b0af4108fe (diff) | |
download | ComputeLibrary-247f52cfe337f7b2542b900e3d8cf122e9d4f11c.tar.gz |
COMPMID-1013 - Create WinogradInfo data structure
COMPMID-1014 - Refactoring Winograd's dataset
Change-Id: I6abdcbf9a90d663f4db666cd410afece9f1d034d
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/125899
Tested-by: Jenkins <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'arm_compute/core/Types.h')
-rw-r--r-- | arm_compute/core/Types.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/arm_compute/core/Types.h b/arm_compute/core/Types.h index 73baf78918..46e6dba1a0 100644 --- a/arm_compute/core/Types.h +++ b/arm_compute/core/Types.h @@ -1136,6 +1136,29 @@ private: GEMMReshapeInfo _reshape_info; }; +/** Winograd information */ +struct WinogradInfo +{ + /** Default constructor + * + * @param[in] output_tile_sz Width and height of the output tile + * @param[in] kernel_sz Width and height of the kernel + * @param[in] input_dims Width and height of the input tensor before the convolution is applied + * @param[in] conv_info Convolution info (Pads, strides) + * @param[in] data_layout Data layout to use for the output tensor once the convolution has been applied + */ + WinogradInfo(Size2D output_tile_sz, Size2D kernel_sz, Size2D input_dims, PadStrideInfo conv_info, DataLayout data_layout) + : output_tile_size(output_tile_sz), kernel_size(kernel_sz), input_dimensions(input_dims), convolution_info(conv_info), output_data_layout(data_layout) + { + } + + Size2D output_tile_size{}; /**< Width and height of the output tile */ + Size2D kernel_size{}; /**< Width and height of the kernel*/ + Size2D input_dimensions{}; /**< Width and height of the input tensor before the convolution is applied */ + PadStrideInfo convolution_info{}; /**< Convolution info (Pads, strides,...) */ + DataLayout output_data_layout{ DataLayout::NCHW }; /**< Data layout to use for the output tensor once the convolution has been applied (NCHW or NHWC) */ +}; + /** IO formatting information class*/ struct IOFormatInfo { |