code: def test_schedule_cache_relayout3():
      m = te.var("m")
      n = te.var("n")
      A = te.placeholder((m * 4, n), name="A")
      B = te.placeholder((m * 4, n), name="B")
      k = te.reduce_axis((0, n), "k")
      C = te.compute(
          (A.shape[0],),
          lambda i: te.sum(A(i, k) * B(i, k), axis=k),
          name="C",
      )
      s = te.create_schedule(C.op)
      x = C.op.axis[0]
      xo, xi = s[C].split(x, factor=4)
      CC = s.cache_write(C, "global")
      s = s.normalize()
      bounds = tvm.te.schedule.InferBound(s)
      stmt = tvm.te.schedule.ScheduleOps(s, bounds)
  
imports: import numpy
  import tvm
  from tvm import te
  from tvm.driver.build_module import schedule_to_module
label_desc: Use image node_id 16 for calling a global function with example usage: test_schedule_cache_relayout3() without return types