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

[MetaSchedule] Extend tune_tir to support tuning of specific blocks. #12342

Merged
merged 8 commits into from
Aug 9, 2022

Conversation

jwfromm
Copy link
Contributor

@jwfromm jwfromm commented Aug 8, 2022

This PR extends PostOrderApply to allow passing in a function that filters which blocks have schedules generated. Although this could be used in many ways, I implement one example where blocks are filtered by name. This can be useful for hand optimizing part of a primfunc, and using metaschedule to tune other parts. I've added a new Blocks argument to tune_tir that allows users to optionally specify the names of blocks that should be tuned. If not provided, the behavior of tune_tir is exactly the same as before this PR.

@jwfromm jwfromm requested a review from zxybazh August 8, 2022 23:58
@zxybazh zxybazh self-assigned this Aug 9, 2022
Copy link
Member

@zxybazh zxybazh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally looks OK to me, just nit picking. CC @junrushao1994

include/tvm/meta_schedule/space_generator.h Show resolved Hide resolved
python/tvm/meta_schedule/tune.py Outdated Show resolved Hide resolved
python/tvm/meta_schedule/tune.py Outdated Show resolved Hide resolved
tests/python/unittest/test_meta_schedule_tune_tir.py Outdated Show resolved Hide resolved
python/tvm/meta_schedule/tune.py Outdated Show resolved Hide resolved
Copy link
Member

@zxybazh zxybazh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for adding the feature to make block tuning easier for users!

@zxybazh zxybazh merged commit aea82c6 into apache:main Aug 9, 2022
xinetzone pushed a commit to daobook/tvm that referenced this pull request Nov 25, 2022
…pache#12342)

* Added optional target blocks.

* Checkpoint for debugging.

* Building with packedfunc filter.

* Extended tune_tir API to support named blocks.

* Remove accidental import.

* Improve integration test.

* Change names for more consistency.

* Update integration test.
@jwfromm jwfromm deleted the tune_block branch April 12, 2023 15:57
mikeseven pushed a commit to mikeseven/tvm that referenced this pull request Sep 27, 2023
…pache#12342)

* Added optional target blocks.

* Checkpoint for debugging.

* Building with packedfunc filter.

* Extended tune_tir API to support named blocks.

* Remove accidental import.

* Improve integration test.

* Change names for more consistency.

* Update integration test.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants