Config cannot find after _alter_conv2d_layout


#1

After tune several days, i get the config file, but when try apply the config, the config not use:
Cannot find config for target=opencl, workload=(‘conv2d’, (1, 3, 224, 224, ‘float32’), (32, 3, 3, 3, ‘float32’), (2, 2), (0, 0, 1, 1), ‘NCHW’, ‘float32’). A fallback configuration is used, which may bring great performance regression.

the tune task workload is:
(func_name=topi_nn_conv2d, args=((‘TENSOR’, (1, 3, 224, 224), ‘float32’), (‘TENSOR’, (32, 3, 3, 3), ‘float32’), (2, 2), (0, 0, 1, 1), (1, 1), ‘NCHW’, ‘float32’), kwargs={}, workload=(‘conv2d’, (1, 3, 224, 224, ‘float32’), (32, 3, 3, 3, ‘float32’), (2, 2), (0, 0, 1, 1), (1, 1), ‘NCHW’, ‘float32’)),

so actually the config is:
{“i”: [“opencl”, “topi_nn_conv2d”, [[“TENSOR”, [1, 3, 224, 224], “float32”], [“TENSOR”, [32, 3, 3, 3], “float32”], [2, 2], [0, 0, 1, 1], [1, 1], “NCHW”, “float32”], {}, [“conv2d”, [1, 3, 224, 224, “float32”], [32, 3, 3, 3, “float32”], [2, 2], [0, 0, 1, 1], [1, 1], “NCHW”, “float32”], {“i”: 4472136, “t”: “direct”, “c”: null, “e”: [[“tile_f”, “sp”, [1, 4, 4, 2]], [“tile_y”, “sp”, [14, 1, 4, 2]], [“tile_x”, “sp”, [56, 1, 2, 1]], [“tile_rc”, “sp”, [3, 1]], [“tile_ry”, “sp”, [3, 1]], [“tile_rx”, “sp”, [1, 3]], [“auto_unroll_max_step”, “ot”, 0], [“unroll_explicit”, “ot”, 0]]}], “r”: [[0.0096201307], 0, 2.138075590133667, 1567393397.9810224], “v”: 0.1}

After investigate, i found when nnvm.compiler.build, it apply AlterOpLayout, then workload is changed, dilation is removed,thus can’t find config. That’s weird, since we tune several days, then Layout is modified, then config is useless.