diff options
author | Vidhya Sudhan Loganathan <vidhyasudhan.loganathan@arm.com> | 2018-10-04 09:21:15 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:55:19 +0000 |
commit | d307f06591f674f1b1f53f96b31404e4da754b3b (patch) | |
tree | 2218b65e1f84817131015271644cf6ecd2efd831 /src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp | |
parent | 188708170a51887868a7170c9ee963372bfb9ced (diff) | |
download | ComputeLibrary-d307f06591f674f1b1f53f96b31404e4da754b3b.tar.gz |
COMPMID-1559 : (Nightly) CLWinograd FP16 SIGABORT and mismatches
Current implementation of winograd fp16 is not accurate enough for large runs.
disabling its use and reopening ticket(COMPMID-1266) to fix it.
The sigbus error that was originally reported against COMPMID-1559 is being tracked as COMPMID-1606
Change-Id: I45129aa366d5710402bc54b623c5fbfb865b3cd5
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/151543
Tested-by: bsgcomp <bsgcomp@arm.com>
Reviewed-by: Isabella Gottardi <isabella.gottardi@arm.com>
Diffstat (limited to 'src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp')
-rw-r--r-- | src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp b/src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp index a70389ab6c..70bf3ae593 100644 --- a/src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp +++ b/src/runtime/CL/functions/CLWinogradConvolutionLayer.cpp @@ -158,6 +158,10 @@ Status CLWinogradConvolutionLayer::validate(const ITensorInfo *input, const ITen const Size2D kernel_size = Size2D(weights->tensor_shape()[idx_width], weights->tensor_shape()[idx_height]); const Size2D output_tile = winograd_output_tile(input_dims, kernel_size, input->data_layout()); + //FP16 implementation of winograd is slower than direct convolution. + //The following check needs to be removed when fp16 winograd is faster than direct convolution (COMPMID-1266) + ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::F32); + // Check if the Winograd configuration requires fast math if(!enable_fast_math) { |