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).

Reply via email to