code: def conv2d_nhwc_spatial_pack(
      cfg, data, kernel, strides, padding, dilation, out_dtype
  ):
      """Compute conv2d with NHWC layout"""
      return conv2d_spatial_pack_nhwc(
          cfg,
          data,
          kernel,
          strides,
          padding,
          dilation,
          out_dtype,
          num_tile=3,
      )
  
imports: import logging
  import tvm
  from tvm import te
  from tvm import relay
  from tvm import autotvm
  from tvm.autotvm.task.space import get_factors
  from ..utils import traverse_inline, get_const_int, get_const_tuple
  from ..None import nn
  from ..nn.winograd_util import winograd_transform_matrices
  from ..nn.conv2d import conv2d_winograd_nhwc, _conv2d_winograd_nhwc_impl
  from ..arm_cpu.conv2d_spatial_pack import conv2d_spatial_pack_nchw
  from ..arm_cpu.conv2d_spatial_pack import conv2d_spatial_pack_nhwc
label_desc: Use image node_id 3 for calling a global function with example usage: conv2d_nhwc_spatial_pack(cfg, data, kernel, strides, padding, dilation, out_dtype) and returns: conv2d_spatial_pack_nhwc