the autotvm of intel_grapchis can work, but there are some problems.
- it seems that for conv2d it just ran one time even when i set the early_stop to large number
maybe it related to the tasks create, I tried to defined the task of conv2d with template_key= ‘direct’, but failed -
- for i in range(len(tasks)):
-
-
try:
-
-
-
print("op_nmae %",tasks[i].workload[0])
-
-
-
op_name = tasks[i].workload[0]
-
-
-
func_create = tasks[i].name
-
-
-
if(op_name == 'conv2d'):
-
-
-
func_create = 'topi_intel_graphics_conv2d_NCHWc'
-
-
-
tsk = autotvm.task.create(func_create, args=tasks[i].args,
-
-
-
target=tasks[i].target, tarrget_host=tasks[i].target_host,template_key='direct')
-
-
-
input_channel = tsk.workload[1][1]
-
-
-
if input_channel >= 64:
-
-
-
tasks[i] = tsk
-
-
-
except Exception:
-
-
-
print("in the except")
-
-
-
pass
-
op_name % depthwise_conv2d_nchw
[Task 1/48] Current/Best: 15.68/ 15.68 GFLOPS | Progress: (8/8) | 20.07 s Done.
op_name % depthwise_conv2d_nchw
[Task 2/48] Current/Best: 0.89/ 20.60 GFLOPS | Progress: (8/8) | 8.79 s Done.
op_name % conv2d
[Task 3/48] Current/Best: 43.59/ 43.59 GFLOPS | Progress: (1/8) | 1.99 s Done.
- after the autotvm of tasks, when doing the build, it failed when with relay.build_config(opt_level=3):
it failed: KeyError: ‘tile_ic’
but it can pass if opt_level is set to 2 in the with relay.build_config(opt_level=2)
@Laurawly
Could you help take a look at these problems? thanks a lot!