elvin-n commented on code in PR #13874:
URL: https://github.com/apache/tvm/pull/13874#discussion_r1092503969


##########
python/tvm/autotvm/tophub.py:
##########
@@ -110,6 +110,10 @@ def context(target, extra_files=None):
         device = tgt.attrs.get("device", "")
         if device != "":
             possible_names.append(_alias(device))
+        # for cases when we do have explicitly defined -device in the target,
+        # we still might have information about it stored in keys container
+        # in other case we will load statistics for definitely irrelative stat

Review Comment:
   :) tried to include logic of matching statistics without detailed 
description in this place.
   
   1. the only mandatory field in target is `kind`. it can be 
llvm/opencl/cuda/...
   2. it might be `device` specified, but not required. It might be "arm_cpu", 
or "adreno" for example
   3. it might be `model` specified, but not required. It might be 
"riscv32-unknown-linux-gnu" or "kirin970" for example
   4. the `keys` field is not specified in the Target string but is filled 
after analysis of the Target automatically by devices. It is done for 
hierarchical search in the `topi` implementations and do fallback to 
lower/parents layers. As a result it might be ["arm_cpu", "cpu"]
   
   Before this change, dedicated tophub *file* was searched only by `device` 
and second by `kind` 
   As you remember, `device` is not mandatory in the Target. At the same time 
TVM understands that target belongs to arm_cpu, it treat it as arm_cpu, but 
before my change, the target like `llvm -model=snapdragon835 
-mtriple=arm64-linux-android -mattr=+neon` was treated only as `llvm` stat 
file. I cannot even imagine on which device `llvm` stat was collected, but 
definitely not on ARM. I.e. statistics was irrelevant.
   
   Adding keys to the priority before `kind` we increase the probability of 
searching proper statistics.
   
   Do I need to comment line by line your answer?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to