I think the functionality all makes sense to me. I have some questions on the 
implementation:

1. Why do you assign global variables when declaring a param, then shadow them 
in those functions that use them? This seems like a bad design because 
unparameterized functions don't get an unbound variable error if they try to 
use a param.
    >     size = tvm.testing.parameter(1, 2, 3)
2. It would be great to qualify `cache=True`, for example 
`cache_return_value=True` or something.
3. What's the procedure for reproducing an error in a test case with several 
parameter axes which does not occur when `TVM_TEST_DISABLE_CACHE` is provided 
and the test cases are filtered such that only 1 parameterization runs?
4. Does it make sense to impose any requirements on the cached values e.g. 
cached fixtures must return serializable values, such that reproducing the 
above scenario is likelier to be easier?
5. Can you give some examples from existing tests of the kinds of things you 
expect to be cached? I know we cache some testdata, which is clearly 
serializable. Are there other examples which could help inform a decision about 
4? I think either way, it would be great to motivate the type of cache with 
some examples of things that we expect to cache.





---
[Visit 
Topic](https://discuss.tvm.apache.org/t/rfc-parametrized-unit-tests/9946/12) to 
respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.tvm.apache.org/email/unsubscribe/86803f27eb144ceef83b63ba22181507e41ec8b83554ceed7d646b63447664fe).

Reply via email to