diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2020-01-09 16:45:46 +0000 |
---|---|---|
committer | Michele Di Giorgio <michele.digiorgio@arm.com> | 2020-01-10 16:58:20 +0000 |
commit | 7fdcfb113cc5651eeb5f35333a41434bc4c2223f (patch) | |
tree | 3a5cfaed83f8bb9ca88b0fdf44c263088338dc4f /src/core/CL/kernels/CLUpsampleLayerKernel.cpp | |
parent | 07958785a2542bf461be48241127d4ad5044d08a (diff) | |
download | ComputeLibrary-7fdcfb113cc5651eeb5f35333a41434bc4c2223f.tar.gz |
COMPMID-2819: Retain layout during configuration for multiple functions.
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Change-Id: Ia528762dc5a93bebfd8fd037bf1f4e75d0b8a6de
Reviewed-on: https://review.mlplatform.org/c/2566
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Diffstat (limited to 'src/core/CL/kernels/CLUpsampleLayerKernel.cpp')
-rw-r--r-- | src/core/CL/kernels/CLUpsampleLayerKernel.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/core/CL/kernels/CLUpsampleLayerKernel.cpp b/src/core/CL/kernels/CLUpsampleLayerKernel.cpp index db5fd90747..d630c30b85 100644 --- a/src/core/CL/kernels/CLUpsampleLayerKernel.cpp +++ b/src/core/CL/kernels/CLUpsampleLayerKernel.cpp @@ -37,7 +37,7 @@ namespace arm_compute { CLUpsampleLayerKernel::CLUpsampleLayerKernel() - : _input(nullptr), _output(nullptr), _info(), _num_elems_processed_per_iteration_input_x() + : _input(nullptr), _output(nullptr), _info(), _data_layout(DataLayout::UNKNOWN), _num_elems_processed_per_iteration_input_x() { } @@ -71,13 +71,12 @@ void CLUpsampleLayerKernel::configure(const ICLTensor *input, ICLTensor *output, _input = input; _output = output; _info = info; + _data_layout = input->info()->data_layout(); _num_elems_processed_per_iteration_input_x = 1; - const DataLayout data_layout = input->info()->data_layout(); - TensorShape output_shape = misc::shape_calculator::compute_upsample_shape(*input->info(), info); auto_init_if_empty(*output->info(), output_shape, 1, input->info()->data_type()); - output->info()->set_data_layout(data_layout); + output->info()->set_data_layout(_data_layout); unsigned int num_elems_processed_per_iteration_x = 16; const int output_width_x = output->info()->dimension(0); @@ -88,7 +87,7 @@ void CLUpsampleLayerKernel::configure(const ICLTensor *input, ICLTensor *output, Window win{}; - switch(data_layout) + switch(_data_layout) { case DataLayout::NCHW: { @@ -140,8 +139,7 @@ void CLUpsampleLayerKernel::run(const Window &window, cl::CommandQueue &queue) Window slice_out = collapsed_window.first_slice_window_3D(); Window slice_in = collapsed_window.first_slice_window_3D(); - DataLayout data_layout = _input->info()->data_layout(); - switch(data_layout) + switch(_data_layout) { case DataLayout::NCHW: slice_in.set(Window::DimX, Window::Dimension(0, _input->info()->dimension(0), _num_elems_processed_per_iteration_input_x)); |