Initial FP8 support

Adds support for Open Compute Project (OCP) 8-bit floating point operations
to the TOSA specification. Both E4M3 and E5M2 types are supported for profiles
as indicated in the Supported Data Types table for each operator.

FP8 operator list
ARGMAX
AVGPOOL
CONV2D
CONV3D
DEPTHWISE_CONV2D
MATMUL
MAX_POOL2D
TRANSPOSE_CONV2D
CONST
CAST
CONCAT
PAD
DIM
RESHAPE
REVERSE
SLICE
TILE
TRANSPOSE
GATHER
SCATTER

Signed-off-by: Eric Kunze <eric.kunze@arm.com>
Change-Id: I3dd83f48afcc3c880c5c88039337ff4f1fd95b1b
10 files changed
tree: 7e1967b073313d7df4885693eda931230d401eb0
  1. .gitignore
  2. .pre-commit-config.yaml
  3. Makefile
  4. README.md
  5. chapters/
  6. figures/
  7. pseudocode/
  8. tools/
  9. tosa.css
  10. tosa.xml
  11. tosa.xsd
  12. tosa_spec.adoc
README.md

TOSA Specification Repository

This repository contains the source files for the TOSA specification. See the specification itself for details on the purpose and definition of the specification.

Build requirements

The TOSA specification is written in asciidoc format, and has been built using the following tools:

  • Asciidoctor 1.5.5 or later (Asciidoctor)
  • Asciidoctor-pdf
  • GNU Make 4.1 or later
  • xmllint
  • Python 3.8 or later

The default make build creates both an html and a pdf version of the specification in out/html and out/pdf

If only an html build is required, make html will build only the html file, and asciidoctor-pdf is not needed.

If only a pdf build is required, make pdf will build only the pdf.