apeskov commented on PR #16741:
URL: https://github.com/apache/tvm/pull/16741#issuecomment-2063720877

   
   Hi @Lunderberg thank you for reviewing this PR.
   
   > The tvm.testing.requires_* marks all provide the pytest.mark.gpu flag, but 
they aren't yet used in all cases.
   
   Yes I know this issue. And I absolutely agree that this PR contains 
logically incorrect test marks. Some tests are marked like "require_XXX" but in 
fact they don't. But this incorrectness was introduced not by me. A lot of test 
from files touched by me verify pattern matching functionality. Pattern 
matching is pure python code and doesn't require any cmake enabled features 
like specific code generator or runtime support. But they still has marker like 
"requires_tensorrt_codegen". So I changed one incorrect marker by another.
   
   The reason of that was in a need to enable tests in CI. I saw 4 way to do 
that:
   1. To make all test mark correct. Produce one more Jenkins job with enabled 
compilation with cuda/cublas/cutlass/tensorrt on virtual machine without GPU. 
And launch there only GPU specific unit tests which doesn't required real GPU. 
The main question how to filter tests which should be launched there.
   
   2. Same as first but instead of creation new one Jenkins job integrate all 
this stuff into "cpu/pr-head". Have to change build script to add all coda 
dependencies. It introduces incorrectness of meaning, CI job with "cpu" in name 
builds "gpu" specific code.
   
   3. Same as second but use "gpu/pr-head". Same problem as for first way. Have 
to change launch script and add all specific marker filter like "-m "gpu or 
cudagraph or tensorcore or cutlass or ***". I guess it's impossible to keep 
this command line correct. The new one tests and "tvm.testing.Features" will be 
messed in this list.
   
   4. Just keep situation as is. And use "gpu" marker as a root marker for all 
type of tests we would like to launch in CI job "gpu/pr-head".
   
   I selected the fourth way as easiest. And I realise that it's imperfect 
solution. If you have any other ideas how to enable all test in CI and keep 
testing code correct please point that.


-- 
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: commits-unsubscr...@tvm.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to