code: def main():
      N = 8
  
      # The kernel computes out = lhs+rhs where lhs and rhs are double3 vectors.
      # lhs is an array of N such vectors and rhs is double3 kernel parameter.
  
      lhs = cupy.random.rand(3 * N, dtype=numpy.float64).reshape(N, 3)
      rhs = numpy.random.rand(3).astype(numpy.float64)
      out = cupy.empty_like(lhs)
  
      kernel = cupy.RawKernel(code, "sum_kernel")
      args = (lhs, rhs.view(double3), out)
      kernel((1,), (N,), args)
  
      expected = lhs + cupy.asarray(rhs[None, :])
      cupy.testing.assert_array_equal(expected, out)
      print("Kernel output matches expected value.")
  
label_desc: Use image node_id 1 for calling a global function with example usage: main() without return types