Use TILELANG_VERBOSE environment var to control the compile output info#2453
Conversation
|
👋 Hi! Thank you for contributing to the TileLang project. Please remember to run We appreciate you taking this step! Our team will review your contribution, and we look forward to your awesome work! 🚀 |
📝 WalkthroughWalkthroughThe PR removes the PTXAS verbose output pass-config key and updates CUDA compilation paths to use environment or instance verbosity, while logging verbose NVCC/PTXAS output through the logger. ChangesPTXAS verbosity control changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@tilelang/contrib/nvcc.py`:
- Around line 155-156: The NVCC compilation and PTXAS verbose logs in nvcc.py
should remain visible through the configured module logger. Verify that the
existing logger.info calls in the compilation path continue to use the package
logger initialized by tilelang/__init__.py with TqdmLoggingHandler and INFO
level, and avoid changing them to lower-priority or direct stdout/stderr output
so the command and verbose ptxas output stay readable alongside progress bars.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: f9a85016-932b-45ff-bc42-2d4e1253dca8
📒 Files selected for processing (6)
src/op/builtin.ccsrc/op/builtin.htilelang/contrib/nvcc.pytilelang/engine/lower.pytilelang/jit/adapter/libgen.pytilelang/transform/pass_config.py
💤 Files with no reviewable changes (3)
- src/op/builtin.cc
- tilelang/transform/pass_config.py
- src/op/builtin.h
| logger.info("NVCC compilation command: %s", " ".join(cmd)) | ||
| logger.info("PTXAS verbose output:\n%s", py_str(out)) |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟡 Minor
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== tilelang logger definition/config =="
rg -n "logger|logging|getLogger|basicConfig|setLevel" tilelang/__init__.py tilelang 2>/dev/null || true
echo
echo "== callsites enabling verbose compile paths =="
rg -n "compile_cuda\\(|verbose\\s*=\\s*True|LibraryGenerator\\(.*verbose" tilelangRepository: tile-ai/tilelang
Length of output: 23933
Confirm verbose output visibility via configured logger.
The logger.info calls in tilelang/contrib/nvcc.py are safe. The tilelang module initializes a custom TqdmLoggingHandler in tilelang/__init__.py and sets the default log level to INFO, ensuring that compilation commands and verbose ptxas output are emitted to the console even in the presence of progress bars.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@tilelang/contrib/nvcc.py` around lines 155 - 156, The NVCC compilation and
PTXAS verbose logs in nvcc.py should remain visible through the configured
module logger. Verify that the existing logger.info calls in the compilation
path continue to use the package logger initialized by tilelang/__init__.py with
TqdmLoggingHandler and INFO level, and avoid changing them to lower-priority or
direct stdout/stderr output so the command and verbose ptxas output stay
readable alongside progress bars.
Summary
TILELANG_VERBOSEenvironment-driven verbosity path.tl.enable_ptxas_verbose_outputpass config / attr definitions from the C++ frontend and Python pass config enum.C++ style / lint notes
src/op/builtin.ccandsrc/op/builtin.h, but it does not appear to change rules documented indocs/developer_guide/cpp_style.md.