Recently, I tried to tune a resnet18 following the official doc. The following error occured
DEBUG:autotvm:No: 191 GFLOPS: 0.00/0.00 result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n [bt] (4) /home/lhy/Documents/Lib/tvm/build/libtvm.so(TVMFuncCall+0x6
3) [0x7f787fd118c3]\n [bt] (3) /home/lhy/Documents/Lib/tvm/build/libtvm.so(+0x8f1f34) [0x7f787f13df34]\n [bt] (2) /home/lhy/Documents/Lib/tvm/build/libtvm.so(tvm::transform::SequentialNode::operator()(
tvm::IRModule, tvm::transform::PassContext const&) const+0x32f) [0x7f787f13a40f]\n [bt] (1) /home/lhy/Documents/Lib/tvm/build/libtvm.so(tvm::tir::transform::PrimFuncPassNode::operator()(tvm::IRModule, t
vm::transform::PassContext const&) const+0x616) [0x7f787f3e63f6]\n [bt] (0) /home/lhy/Documents/Lib/tvm/build/libtvm.so(+0x5c13af) [0x7f787ee0d3af]\n File "/home/lhy/Documents/Lib/tvm/python/tvm/_ffi/_
ctypes/packed_func.py", line 81, in cfun\n rv = local_pyfunc(*pyargs)\n File "/home/lhy/Documents/Lib/tvm/python/tvm/autotvm/measure/measure_methods.py", line 707, in verify_pass\n raise Instantia
tionError("Skipped because of invalid gpu kernel")\ntvm.autotvm.task.space.InstantiationError: Skipped because of invalid gpu kernel'),), error_no=1, all_cost=0.03390002250671387, timestamp=1614066022.15
7777) [('tile_f', [-1, 1, 16, 2]), ('tile_y', [-1, 1, 1, 7]), ('tile_x', [-1, 1, 1, 7]), ('tile_rc', [-1, 128]), ('tile_ry', [-1, 1]), ('tile_rx', [-1, 1]), ('auto_unroll_max_step', 512), ('unroll_ex
plicit', 1)],None,154745
This script works fine with tvm 0.7. And I noticed this error also came up in the official autotune doc here:
No: 1 GFLOPS: 195.50/195.50 result: MeasureResult(costs=(0.0011841530204081633,), error_no=0, all_cost=1.680870771408081, timestamp=1610825374.8415902) [('tile_f', [-1, 2, 64, 1]), ('tile_y', [-1, 1, 1, 7]), ('tile_x', [-1, 1, 7, 1]), ('tile_rc', [-1, 2, 2]), ('tile_ry', [-1, 3, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,4881186
No: 2 GFLOPS: 0.00/195.50 result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n [bt] (4) /workspace/build/libtvm.so(TVMFuncCall+0x61) [0x7f2edbf60811]\n [bt] (3) /workspace/build/libtvm.so(+0x6c5317) [0x7f2edb30b317]\n [bt] (2) /workspace/build/libtvm.so(tvm::transform::SequentialNode::operator()(tvm::IRModule, tvm::transform::PassContext const&) const+0x3ed) [0x7f2edb307d3d]\n [bt] (1) /workspace/build/libtvm.so(tvm::tir::transform::PrimFuncPassNode::operator()(tvm::IRModule, tvm::transform::PassContext const&) const+0x55f) [0x7f2edb6c312f]\n [bt] (0) /workspace/build/libtvm.so(+0x131721b) [0x7f2edbf5d21b]\n File "tvm/_ffi/_cython/./packed_func.pxi", line 56, in tvm._ffi._cy3.core.tvm_callback\n File "/workspace/docs/../python/tvm/autotvm/measure/measure_methods.py", line 698, in verify_pass\n raise InstantiationError("Skipped because of invalid gpu kernel")\ntvm.autotvm.task.space.InstantiationError: Skipped because of invalid gpu kernel',),), error_no=1, all_cost=0.05328869819641113, timestamp=1610825372.31659) [('tile_f', [-1, 8, 4, 4]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 1, 1, 7]), ('tile_rc', [-1, 16, 16]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 1]), ('auto_unroll_max_step', 512), ('unroll_explicit', 1)],None,7106118
No: 3 GFLOPS: 180.03/195.50 result: MeasureResult(costs=(0.0012859004596774194,), error_no=0, all_cost=1.6597881317138672, timestamp=1610825376.337518) [('tile_f', [-1, 4, 32, 1]), ('tile_y', [-1, 1, 1, 7]), ('tile_x', [-1, 1, 1, 1]), ('tile_rc', [-1, 1, 16]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 1]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,3605182
Similar errors can be found by google, but none of them solved my problem. Any help is appreciated.