Announcing TOSA v0.70.0

TOSA 0.70.0 Release Notes

We have now tagged and released TOSA 0.70.0 on
The rendered specification is available at


  • Formalize the description of arguments in tosa.xml
  • Generate more from the tosa.xml file.
    – Rank requirements for arguments
    – Maximums for each TOSA level.
  • Updated Main Inference floating-point conformance testing
  • Add enumerations to TOSA specification
    – Accumulator size
    – Resize type
  • Replace uint6_t with int8_t
    – Stick to more common types.
    – Where uint6_t was used has range restrictions so existing implementations do not require changes
  • Improve description of the execution model for TOSA
  • Minor cleanup

Reference model

  • Add support for checking against a provided TOSA level
  • Update test generators to handle the EIGHTK TOSA level
  • Add a precise mode which calculates operators in FP64 precision to work with Main inference floating-point conformance testing
  • Various cleanups/test generator improvements

Serialization Library

  • Add support for reading/writing data sizes other than 32-bit (8/16/64)
  • Improved shape inference
  • Bugfixes / cleanup

MLIR translator

  • Add support for FFT2d
  • Improve deserialization from TOSA flatbuffer to MLIR
  • Fix serialization of while/if ops

Thanks for the new update!

Is there a place where we can see a more formal diff (e.g. git diff?) of the specification to make sure that we really catch also small changes?

I had a whole writeup of how I couldn’t do this, but then just before pressing reply I think I have the right way to do this with cgit. This should give you the 0.60.0 to 0.70.0 diff for the specification:

You will see that a lot of the changes are the XML cleanup to be more consistent/organized with arguments to the operators.