code: def run_opencl():
      # NOTE: This is the setting for my rk3399 board. You need to modify
      # them according to your environment.
      opencl_device_host = "10.77.1.145"
      opencl_device_port = 9090
      target = tvm.target.Target(
          "opencl", host="llvm -mtriple=aarch64-linux-gnu"
      )
  
      # create schedule for the above "add one" compute declaration
      s = te.create_schedule(B.op)
      xo, xi = s[B].split(B.op.axis[0], factor=32)
      s[B].bind(xo, te.thread_axis("blockIdx.x"))
      s[B].bind(xi, te.thread_axis("threadIdx.x"))
      func = tvm.build(s, [A, B], target=target)
  
      remote = rpc.connect(opencl_device_host, opencl_device_port)
  
      # export and upload
      path = temp.relpath("lib_cl.tar")
      func.export_library(path)
      remote.upload(path)
      func = remote.load_module("lib_cl.tar")
  
      # run
      dev = remote.cl()
      a = tvm.nd.array(
          np.random.uniform(size=1024).astype(A.dtype), dev
      )
      b = tvm.nd.array(np.zeros(1024, dtype=A.dtype), dev)
      func(a, b)
      np.testing.assert_equal(b.numpy(), a.numpy() + 1)
      print("OpenCL test passed!")
  
imports: import numpy
  import tvm
  from tvm import te
  from tvm import rpc
  from tvm.contrib import utils
label_desc: Use image node_id 1 for calling a global function with example usage: run_opencl() without return types