aboutsummaryrefslogtreecommitdiff
path: root/chapters/introduction.adoc
diff options
context:
space:
mode:
authorDominic Symes <dominic.symes@arm.com>2022-11-04 18:00:03 +0000
committerEric Kunze <eric.kunze@arm.com>2022-12-05 19:18:51 +0000
commite4d6a1b99337f33cfaf343005e355ef7a68b2be9 (patch)
tree32ae772f418c53ad90e7f069caf59f51dfb7b6f0 /chapters/introduction.adoc
parent1cf84e95f85d510f55720fb98694530923ba9a1c (diff)
downloadspecification-e4d6a1b99337f33cfaf343005e355ef7a68b2be9.tar.gz
Add Levels defintion
Add definition of Level 1.0. Signed-off-by: Dominic Symes <dominic.symes@arm.com> Change-Id: I1b34ae22396f273cc5ecdf99198fdbece6e2809c
Diffstat (limited to 'chapters/introduction.adoc')
-rw-r--r--chapters/introduction.adoc26
1 files changed, 23 insertions, 3 deletions
diff --git a/chapters/introduction.adoc b/chapters/introduction.adoc
index 848359b..5a2b9a1 100644
--- a/chapters/introduction.adoc
+++ b/chapters/introduction.adoc
@@ -106,6 +106,26 @@ The following table summarizes the three profiles:
|Main Training|TOSA-MT|Yes|Yes|Yes
|===
+=== Levels
+
+A TOSA level defines operator parameter ranges that an implementation shall support.
+This is distinct from a profile that defines the operations and data-types supported.
+This version of the specification defines two TOSA levels:
+
+* No level : allows the full range of parameters specified by the operations according to the operation data types.
+* Level 8K : ranges are expected to be sufficient for applications with frame sizes up to 8K.
+
+Later versions of the specification may define additional levels.
+The following table defines the value ranges for Level 1.0.
+These ranges are checked using the LEVEL_CHECK() function with the operator descriptions.
+
+.Level maximums
+|===
+| Level | tosa_level_t | MAX_RANK | MAX_KERNEL | MAX_STRIDE | MAX_SCALE
+| None | tosa_level_none | NA | NA | NA | NA
+| 8K | tosa_level_8k | 6 | 8192 | 8192 | 64
+|===
+
=== Status
The TOSA specification is a work in progress.
@@ -118,7 +138,7 @@ The TOSA specification is a work in progress.
=== Compliance
-This section defines when a TOSA implementation is compliant to a given TOSA specification profile.
+This section defines when a TOSA implementation is compliant to a given TOSA specification profile and level.
The term conformant will mean the same as compliant.
==== Baseline Inference Profile Compliance
@@ -141,11 +161,11 @@ In terms of psuedo-code, if *graph* is a TOSA graph consisting of Baseline Infer
[source,c++]
----
-bool tosa_test_compliance(tosa_graph_t graph, tosa_list_t input_list) {
+bool tosa_test_compliance(tosa_graph_t graph, tosa_list_t input_list, tosa_level_t level) {
shape_list_t output_list_spec = tosa_allocate_list(tosa_output_shape(graph));
shape_list_t output_list_test = tosa_allocate_list(tosa_output_shape(graph));
tosa_graph_result = tosa_valid // result starts as valid
- tosa_execute_graph(graph, input_list, output_list_spec);
+ tosa_execute_graph(graph, input_list, output_list_spec, level);
if (tosa_graph_result == tosa_unpredictable) {
return true; // No requirement to match an unpredictable result
}