class_docstr: Matmultest class
class_docstr_tok: ["Matmultest","class"]
code: def main(a: T.handle, b: T.handle, c: T.handle) -> None:  # type: ignore
      # pylint: disable=missing-function-docstring
      T.func_attr({"global_symbol": "main", "tir.noalias": True})
      a_buffer = T.match_buffer(a, (16, 16), "float32")
      b_buffer = T.match_buffer(b, (16, 16), "float32")
      c_buffer = T.match_buffer(c, (16, 16), "float32")
      for i, j, k in T.grid(16, 16, 16):
          with T.block("matmul"):
              vi_axis, vj_axis, vk_axis = T.axis.remap("SSR", [i, j, k])
              with T.init():
                  c_buffer[vi_axis, vj_axis] = 0.0  # type: ignore
              c_buffer[vi_axis, vj_axis] = (
                  c_buffer[vi_axis, vj_axis]
                  + a_buffer[vi_axis, vk_axis]
                  * b_buffer[vk_axis, vj_axis]
              )
  
imports: import tempfile
  import numpy
  import pytest
  import tvm.testing
  import tvm.topi.testing
  from tvm import meta_schedule
  from tvm import relay, te
  from tvm.contrib.hexagon.meta_schedule import get_hexagon_local_builder, get_hexagon_rpc_runner
  from tvm.meta_schedule import postproc, schedule_rule
  from tvm.meta_schedule.arg_info import TensorInfo
  from tvm.meta_schedule.builder import BuilderInput
  from tvm.meta_schedule.runner import RunnerInput
  from tvm.script import tir
  from tvm.tir import FloatImm
  from tvm.tir.tensor_intrin.hexagon import VRMPY_u8u8i32_INTRIN
  from .infrastructure import get_hexagon_target
label_desc: Use image node_id 1 for calling the MatmulModule obj's underlying member method code with example usage: obj.main(a, b, c) without return types