Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI Problem] Flaky Test: tests/python/unittest/test_meta_schedule_schedule_rule_auto_inline.py::test_inline_into_cache #9952

Closed
junrushao opened this issue Jan 17, 2022 · 3 comments · Fixed by #9958
Assignees

Comments

@junrushao
Copy link
Member

Branch/PR Failing

Looks like this PR introduced a flaky test. Likely it's due to some concurrent merge.

Jenkins Link

https://ci.tlcpack.ai/blue/organizations/jenkins/tvm/detail/main/2417/pipeline/

Flakiness

Yes.

CC: @MasterJH5574

@junrushao
Copy link
Member Author

CC @wrongtest @Hzfengsy

It looks like some randomness was introduced recently in GetBlockReadWriteRegion, possibly in this commit, but this particular robustness issue wasn't revealed until @MasterJH5574's PR:

image

@wrongtest-intellif
Copy link
Contributor

wrongtest-intellif commented Jan 18, 2022

cc @junrushao1994 @Hzfengsy

The fix trial is here #9958

I am sorry for introducing this issue. I believe it is introduced by #9372, but detected until subsequent change #9880 which touch more testcases.

Developers have already pointed out that with equations like xx + rx >= 1, the SolveInequalitiesToRange create undetermined results for the failed case. After a look through I found that actually the result of SolveInequalitiesToRange depend on the to-solve variables order we pass in. However, in the region analysis context, I used an unordered_map with ObjectPtrHash to record the variables.

@junrushao
Copy link
Member Author

Thanks for acting quickly on this issue @MasterJH5574 @wrongtest! I tried myself last night but failed to find the root reason. Thank you for finding this out!

junrushao pushed a commit that referenced this issue Jan 19, 2022
* fix to stablize the var orders when solve bounds in region analysis

* change to std::find_if since num of vars is generally small
yuanfz98 pushed a commit to yuanfz98/tvm that referenced this issue Jan 24, 2022
* fix to stablize the var orders when solve bounds in region analysis

* change to std::find_if since num of vars is generally small
crazydemo pushed a commit to crazydemo/tvm that referenced this issue Jan 27, 2022
* fix to stablize the var orders when solve bounds in region analysis

* change to std::find_if since num of vars is generally small
ylc pushed a commit to ylc/tvm that referenced this issue Feb 16, 2022
* fix to stablize the var orders when solve bounds in region analysis

* change to std::find_if since num of vars is generally small
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants