Hi, I am tuning a gesture recognition model based on the MobileNetV2 model and I find that after tuning using XGBTuner, the final inference result is incorrect. I used the following tuning config
tuning_option = {
'log_filename': log_file,
'tuner': 'xgb',
'n_trial': 500,
'early_stopping': 200,
'measure_option': autotvm.measure_option(
builder=autotvm.LocalBuilder(timeout=10),
runner=autotvm.LocalRunner(number=10, repeat=2, timeout=4, min_repeat_ms=150),
),
}
I narrowed down the config causing the issue :
{"input": ["llvm -device=arm_cpu -target=aarch64-linux-gnu", "depthwise_conv2d_nchw_spatial_pack.arm_cpu", [["TENSOR", [1, 576, 14, 14], "float32"], ["TENSOR", [576, 1, 3, 3], "float32"], [2, 2], [1, 1, 1, 1], [1, 1], "float32"], {}], "config": {"index": 2204455, "code_hash": null, "entity": [["tile_co", "sp", [-1, 2]], ["tile_oh", "sp", [-1, 1]], ["tile_ow", "sp", [-1, 7]], ["reorder_0", "re", [0, 1, 2, 3, 4, 5, 8, 6, 7]], ["reorder_1", "re", [0, 1, 2, 3, 4, 6, 5]], ["ann_reduce", "an", ["none", "unroll"]], ["ann_spatial", "an", ["unroll", "unroll", "vec"]], ["data_pad_inline", "ot", 4], ["data_vec_inline", "ot", 2], ["conv_inline", "ot", 2]]}, "result": [[6.674246947122407e-05, 6.392590855974291e-05], 0, 2.052468776702881, 1585008564.3448634], "version": 0.2, "tvm_version": "0.7.dev1"}
The correct result is detected if the above config is removed from the log.
What might be the issue?
Target device: NVIDIA Jetson TX2, ARM CPU
Tuning code : https://github.com/Ragavendrams/temporal-shift-module/blob/master/online_demo/tune_relay.py