Skip to content

Direct bindings to MLIR TOSA operations #2

@bryjen

Description

@bryjen

The frontend/backend should have direct bindings to the following MLIR TOSA ops. The parser and the emitter are straightforward; the semantic analyzer, however, should be able to assert that the passed arguments are valid for the operation (for example asserting that two tensors' shapes are valid for matrix multiplication) as well as perform inference on parameterized types (for example returning tensor size information after the multiplication of two tensors). Furthermore, these types should be easily translatable to MLIR TOSA types on the backend side.

Parser:

  • tensors
  • tosa.reshape
  • tosa.transpose
  • tosa.tile
  • tosa.slice
  • tosa.concat
  • tosa.identity
  • tosa.cast
  • tosa.conv2d
  • tosa.depthwise_conv2d
  • tosa.matmul
  • tosa.fully_connected
  • tosa.avg_pool2d
  • tosa.max_pool2d
  • tosa.pad
  • tosa.relu
  • tosa.sigmoid
  • tosa.tanh
  • tosa.softmax

Semantics (type inference + argument validation):

  • tensors
  • tosa.reshape
  • tosa.transpose
  • tosa.tile
  • tosa.slice
  • tosa.concat
  • tosa.identity
  • tosa.cast
  • tosa.conv2d
  • tosa.depthwise_conv2d
  • tosa.matmul
  • tosa.fully_connected
  • tosa.avg_pool2d
  • tosa.max_pool2d
  • tosa.pad
  • tosa.relu
  • tosa.sigmoid
  • tosa.tanh
  • tosa.softmax

Emitter:

  • tensors
  • tosa.reshape
  • tosa.transpose
  • tosa.tile
  • tosa.slice
  • tosa.concat
  • tosa.identity
  • tosa.cast
  • tosa.conv2d
  • tosa.depthwise_conv2d
  • tosa.matmul
  • tosa.fully_connected
  • tosa.avg_pool2d
  • tosa.max_pool2d
  • tosa.pad
  • tosa.relu
  • tosa.sigmoid
  • tosa.tanh
  • tosa.softmax

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions