Skip to content

[REFACTOR][TIR] Rename tir.Block to SBlock#18689

Merged
tqchen merged 3 commits into
apache:mainfrom
tqchen:sblock
Jan 28, 2026
Merged

[REFACTOR][TIR] Rename tir.Block to SBlock#18689
tqchen merged 3 commits into
apache:mainfrom
tqchen:sblock

Conversation

@tqchen

@tqchen tqchen commented Jan 27, 2026

Copy link
Copy Markdown
Member

This PR renames tir.Block to SBlock. This clearly indicate the scheduable property of the block and is a prereq for followup stir passes refactor.

Main changes:

  • Data structure change from Block to SBlock
  • Syntax change from T.block to T.sblock

This PR renames tir.Block to SBlock. This clearly
indicate the scheduable property of the block and
is a prereq for followup stir passes refactor.
This update focuses on data structure changes.
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @tqchen, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces a significant refactoring within the TensorIR (TIR) system by renaming the core Block construct to SBlock. This change, along with its cascading effects on related types and functions, is designed to enhance the semantic clarity of the code, explicitly highlighting the schedulable nature of these blocks. It establishes a crucial foundation for future architectural improvements and refactoring efforts within the TIR scheduling infrastructure.

Highlights

  • Core Refactoring: The primary change is the renaming of tir.Block to tir.SBlock across the codebase. This change is propagated to related types such as BlockRV becoming SBlockRV, BlockScope becoming SBlockScope, and BlockRealize becoming SBlockRealize.
  • Clarity and Schedulability: The renaming aims to clearly indicate the 'schedulable' property of these blocks, improving code clarity and consistency within the TensorIR (TIR) scheduling system.
  • Prerequisite for Future Work: This refactoring is a foundational step, serving as a prerequisite for subsequent refactoring passes and enhancements within the TIR scheduling framework.
  • Extensive Codebase Update: The changes span across various components, including documentation, C++ headers, Python bindings, meta-schedule rules, and TIR analysis/transformation passes, ensuring a comprehensive update.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request refactors the TIR codebase by renaming Block to SBlock and updating related classes and functions to use the new name. The code changes include modifications to the C++ code, Python bindings, and test cases. The review comments suggest updating docstrings and method names to reflect the change from Block to SBlock for consistency and clarity.

Comment thread python/tvm/dlight/analysis/common_analysis.py Outdated
Comment thread python/tvm/tir/analysis/analysis.py Outdated
Comment thread python/tvm/tir/functor.py Outdated
Comment thread python/tvm/tir/functor.py Outdated
Comment thread python/tvm/tir/schedule/schedule.py Outdated
@tqchen

tqchen commented Jan 27, 2026

Copy link
Copy Markdown
Member Author

/gemini review

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

The number of changes in this pull request is too large for Gemini Code Assist to generate a review.

@tqchen

tqchen commented Jan 27, 2026

Copy link
Copy Markdown
Member Author

@tvm-bot rerun

@tqchen tqchen merged commit 877b448 into apache:main Jan 28, 2026
13 checks passed
MasterJH5574 pushed a commit to mlc-ai/mlc-llm that referenced this pull request Feb 3, 2026
Refactoring to match the changes introduced in apache/tvm#18689.

3rdparty/tvm is also updated.
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.

3 participants