aboutsummaryrefslogtreecommitdiff
path: root/docs/01_library.dox
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2020-10-07 03:36:34 +0100
committerGeorgios Pinitas <georgios.pinitas@arm.com>2020-10-07 15:20:11 +0000
commit9bfa5d18cd0473b5e5e2e199354bd5fd81eea69c (patch)
treeb59c79c2d02e2423857343c8393bbd4f768507af /docs/01_library.dox
parentf316e9ae24d12e98dd2669316d6dfb97fcccc24d (diff)
downloadComputeLibrary-9bfa5d18cd0473b5e5e2e199354bd5fd81eea69c.tar.gz
COMPMID-3789: Update documentation on data type and data layout
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Change-Id: Ie3436de98528c7732b1f72a3208a6a5a91651fe1 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4102 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'docs/01_library.dox')
-rw-r--r--docs/01_library.dox18
1 files changed, 17 insertions, 1 deletions
diff --git a/docs/01_library.dox b/docs/01_library.dox
index ea29b75cd3..39739cbe50 100644
--- a/docs/01_library.dox
+++ b/docs/01_library.dox
@@ -43,7 +43,23 @@ The Runtime library is a very basic wrapper around the Core library which can be
For maximum performance, it is expected that the users would re-implement an equivalent to the runtime library which suits better their needs (With a more clever multi-threading strategy, load-balancing between NEON and OpenCL, etc.)
-@section S4_1_2 Thread-safety
+@section S4_1_2 Data-type and Data-layout support
+
+Compute Library supports a wide list of data-types, information can been directly found in the documentation of each kernel/function.
+The main data-types that the Machine Learning functions support are the following:
+- BFLOAT16: 16-bit non-standard brain floating point
+- F16: 16-bit half precision floating point
+- F32: 32-bit single precision floating point
+- QASYMM8: 8-bit unsigned asymmetric quantized
+- QASYMM8_SIGNED: 8-bit signed asymmetric quantized
+- QSYMM8_PER_CHANNEL: 8-bit signed symmetric quantized (Used for the weights)
+
+Moreover, Compute Library supports the following data layouts (fast changing dimension from right to left):
+- NHWC: The native layout of Compute Library that delivers the best performance where channels are in the fastest changing dimension
+- 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
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.