I change my code as follows: ``` import logging import sys import numpy as np
import tvm from tvm import te import topi from topi.testing import conv2d_nchw_python from tvm import autotvm logging.getLogger('autotvm').setLevel(logging.DEBUG) logging.getLogger('autotvm').addHandler(logging.StreamHandler(sys.stdout)) # the last layer in resnet N, H, W, CO, CI, KH, KW, strides, padding = 1, 7, 7, 512, 512, 3, 3, (1, 1), (1, 1) data = te.placeholder((N, CI, H, W), name='data') kernel = te.placeholder((CO, CI, KH, KW), name='kernel') #conv = topi.nn.conv2d_nchw(data, kernel, strides, padding, dilation=1, out_dtype='float32') #cfg = autotvm.get_config() task = autotvm.task.create("conv2d_nchw.cuda", args=(data, kernel, strides, padding, 1, 'float32'), target='cuda') print(task.config_space) ``` Now it runs well. I have another question: in the Tuning High Performance Convolution on NVIDIA GPUs tutorial, the tuned operator is built by: ``` # apply history best from log file with autotvm.apply_history_best('conv2d.log'): with tvm.target.create("cuda"): s, arg_bufs = conv2d_no_batching(N, H, W, CO, CI, KH, KW, strides, padding) func = tvm.build(s, arg_bufs) ``` How can I build the operator when I tune it with AutoTVM? Thanks a lot. --- [Visit Topic](https://discuss.tvm.ai/t/how-to-use-autotvm-with-manually-created-topi-computations/4895/12) to respond. You are receiving this because you enabled mailing list mode. To unsubscribe from these emails, [click here](https://discuss.tvm.ai/email/unsubscribe/67420e5e0fd55531274ab8fbbd9b4952d41b9b35033e35cf59914acdb73344b5).