TOSA specification v0.23.0 released

TOSA v0.23.0 release note

The v0.23.0 release of TOSA focuses on error conditions and reporting.

In prior versions of the specification, asserts were used in the pseudocode to indicate expected input limitations. It was unclear what behavior should occur if one of the asserts executed. To clarify this behavior, the REQUIRE and ERROR_IF functions were introduced into the pseudocude. Section 3.1 in the specification describes what should happen if the REQUIRE or ERROR_IF failures find invalid conditions.

The specification pdf can be found on the wiki here: :zap: TOSA (

Operator functionality changes:

  • Removed IDENTITYN, PLACEHOLDER, and RELUN. RELUN can be implmented with the
    existing CLAMP operator. IDENTITYN and PLACEHOLDER can be handled with
    appropriate tosa graph activity.
  • INTDIV - The integer division operator was renamed from DIV to clarify that it only operates on integer values.
  • PAD - The PAD operator now takes a value to be used as the pad constant.

Miscellaneous other clarification and cleanups were made to text and pseudocode.

MLPlatform repository notes

With the 0.23.0 release some changes have been made to how the source for TOSA is stored. The primary development branch is now the ‘main’ branch. When a release is made, a new branch v(Major).(Minor) is made. This branch would contain any bugfixes for that release. Tags for each different patch version will be created as needed.

The repositories for tosa are on Code Review (