code: def conv2d_nchw_int8(
      data, kernel, strides, padding, dilation, out_dtype="int32"
  ):
      """Compute conv2d internally using conv2d_nchwc layout for int8 dtype"""
      assert data.dtype in ("int8", "uint8")
      assert kernel.dtype in ("int8", "uint8")
      assert data.dtype == kernel.dtype
      packed_out = conv2d_NCHWc_int8(
          data, kernel, strides, padding, dilation, "NCHW", out_dtype
      )
      return unpack_NCHWc_to_nchw(packed_out, out_dtype)
  
file_path: tvm/python/tvm/topi/cuda/conv2d_int8.py
imports: import tvm
  from tvm import te
  from tvm import autotvm
  from .injective import schedule_injective_from_existing
  from .tensor_intrin import dp4a
  from ..nn.pad import pad
  from ..nn.conv2d import unpack_NCHWc_to_nchw
  from ..nn.utils import get_pad_tuple
  from ..utils import get_const_tuple, traverse_inline
label_desc: Use image node_id 1 for calling a global function with example usage: conv2d_nchw_int8(data, kernel, strides, padding, dilation, out_dtype) and returns: unpack_NCHWc_to_nchw