This is the first release candidate for TOSA 1.0.
The repositories have all been tagged with the v1.0.0-rc0 tag, and all have branches v1.00 to track development of this release.
The updated version of the specification will be available shortly at: TOSA Specification
Release notes follow:
Specification
Specification repository
- Changed the way profiles are defined. Profiles are no longer supersets of functionality. Each profile co
ntains enough operators to define a useful set of functionality. - Added the concept of extensions. Each extension provides additional functionality to an underlying profile.
- Profiles included in the current version are:
EXT-INT16, EXT-INT4, EXT-BF16, EXT-FP8E4M3, EXT-FP8E5M2, EXT-FFT, EXT-VARIABLE
- Profiles included in the current version are:
- Added SIN and COS to the elementwise operators.
- Modified convolution operators to have the accumulator type specified as an attribute.
- The output types were also adjusted such that a FP16 convolution can have either FP16
or FP32 accumulator, with the output type always as FP16. These now work similar to AVG_POOL2D.
- The output types were also adjusted such that a FP16 convolution can have either FP16
- Removed the Main Training profile.
- It did not have any operators of its own, and thus wasn’t possible to justify in its current state.
- FP8 types now use non-saturating rules when CAST is used to cast from a wider data type.
- Added a new limit on the number of tensors allowed in a tensor list: MAX_TENSOR_LIST_SIZE
- New non-normative appendix added to carry information about why choices in TOSA were made.
- Cleanup and update of TOSA status noting that this is the first release candidate for TOSA 1.0
- Added a new field to the XML to note what version of the specification an operator was added in.
- (Nothing before 1.0 is included)
- Error bound fixes
- Bugfixes, pseudocode clarifications
Reference Model
Reference Model Repository
- Alignment to the specification for attributes/inputs.
- RESIZE, MUL
- Update to support changes to CONV operators to have accumulator size as an attribute and corresponding output type changes.
- Add support for new SIN/COS operators.
- Conformance testing now accounts for the new profiles and extensions.
- Supported profiles and extension information is now generated to enable filtering at test runtime.
- Significant increase in floating-point testing.
- Main compliance test suite covers all operators
- Alignment to changes in TOSA serialization
- Bugfixes and other improvements.
Serialization Library
Serialization Library Repository
- Add support for serializing FP8
- Add rank 0 tensor support
- Add SIN/COS operators
- Align attributes with specification
- Add support for CONV operators new accumulator type attribute
TOSA MLIR Translator
MLIR Translator Repository
- Add support for FP8 data types
- Add new accumulator type attribute for convolution operators
- Remove out_shape attribute for TRANSPOSE_CONV2D
- Align MLIR translation with specification