diff options
author | Sheri Zhang <sheri.zhang@arm.com> | 2020-10-08 14:21:46 +0100 |
---|---|---|
committer | Sheri Zhang <sheri.zhang@arm.com> | 2020-10-12 10:58:20 +0000 |
commit | ff9612cad3288ab96f94e86485e591401753f56b (patch) | |
tree | 0117d7961b8ee22d71e0668b513cbd716302a983 /docs | |
parent | ed3671380c65bdb3f45d5bb363732ad5ab0ee14d (diff) | |
download | ComputeLibrary-ff9612cad3288ab96f94e86485e591401753f56b.tar.gz |
COMPMID-3818: Extend documentation to report what fast-math flag enables
Signed-off-by: Sheri Zhang <sheri.zhang@arm.com>
Change-Id: I726decc11f19bd89187cdaec89d56dcf4613dff7
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4112
Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'docs')
-rw-r--r-- | docs/01_library.dox | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/docs/01_library.dox b/docs/01_library.dox index 39739cbe50..742a246582 100644 --- a/docs/01_library.dox +++ b/docs/01_library.dox @@ -59,7 +59,18 @@ Moreover, Compute Library supports the following data layouts (fast changing dim - NCHW: Legacy layout where width is in the fastest changing dimension where N = batches, C = channels, H = height, W = width -@section S4_1_3 Thread-safety +@section S4_1_3 Fast-math support + +Compute Library supports different types of convolution methods, fast-math flag is only used for the Winograd algorithm. +When the fast-math flag is enabled, both NEON and CL convolution layers will try to dispatch the fastest implementation available, which may introduce a drop in accuracy as well. The different scenarios involving the fast-math flag are presented below: +- For FP32: + - no-fast-math: Only supports Winograd 3x3,3x1,1x3,5x1,1x5,7x1,1x7 + - fast-math: Supports Winograd 3x3,3x1,1x3,5x1,1x5,7x1,1x7,5x5,7x7 +- For fp16: + - no-fast-math: No Winograd support + - fast-math: Supports Winograd 3x3,3x1,1x3,5x1,1x5,7x1,1x7,5x5,7x7 + +@section S4_1_4 Thread-safety Although the library supports multi-threading during workload dispatch, thus parallelizing the execution of the workload at multiple threads, the current runtime module implementation is not thread-safe in the sense of executing different functions from separate threads. This lies to the fact that the provided scheduling mechanism wasn't designed with thread-safety in mind. |