* Change default log level from WARNING to INFO in TileLang initialization
* Refactor Flash Attention Variable-Length MHA Example with Cython Backend Support
- Update `example_mha_fwd_varlen.py` to use Cython backend for kernel compilation
- Remove unused imports and simplify function signature
- Modify `flashattn` function to handle max sequence length as a separate argument
- Update kernel call to include max sequence length parameter
- Improve code readability and remove commented-out code
- Add print statement to confirm successful assertion
* Refactor code formatting in TileLang lowering and example files
- Improve line breaks and code formatting in `lower.py`, `wrapper.py`, and `tensor.py`
- Simplify line breaks and reduce unnecessary whitespace
- Enhance code readability by adjusting indentation and line breaks
- Update example MHA forward pass script with cleaner tensor initialization
* Update TileLang kernel test with import path changes for MMA layout and macro generator
- Modify import statements in test_tilelang_kernel_dequantize_gemm.py
- Replace bitblas imports with tilelang.intrinsics imports for MMA-related utilities
- Update main function to use tilelang.testing.main()
* Add Block Sparse Attention Examples for TileLang and Triton
- Implement block sparse attention kernels for both TileLang and Triton
- Add utility functions for generating sparse attention masks using top-k and threshold methods
- Support causal and variable-length attention scenarios
- Include test cases for different sequence length configurations
- Demonstrate block-level sparse attention with configurable parameters
* Refactor Block Sparse Attention Examples with Code Style Improvements
- Improve code formatting in block_sparse_attn_tilelang.py and block_sparse_attn_triton.py
- Enhance readability by adjusting line breaks and indentation
- Simplify kernel and function calls with better formatting
- Add whitespace and line break improvements for better code clarity
* [Dev] Add RetNet Linear Attention example
* [Dev] Add WgmmaSync rewriter for pipelined WGMMA operations and add MHA WGMMA pipelined example (FA3-like scheduling)
This commit introduces a new transformation pass `RewriteWgmmaSync` to optimize warp group matrix multiply accumulate (WGMMA) operations in the TileLang compiler:
- Implemented `WgmmaSyncRewriter` in `src/transform/wgmma_sync_rewriter.cc`
- Added pass registration for `RewriteWgmmaSync`
- Updated `tilelang/engine/phase.py` to include the new transformation pass
- Updated `tilelang/transform/__init__.py` to expose the new pass
The rewriter intelligently manages synchronization and dependencies between WGMMA operations, improving pipeline efficiency for complex matrix multiplication kernels.
* [Bugfix] Fix bug in ThreadTagChecker for warp specialization
Improve thread tag validation in warp specialized rewriter to prevent unintended transformations:
- Add more precise checks for threadIdx.y and threadIdx.z
- Validate thread extent to ensure only single-extent thread bindings are allowed
- Prevent warp specialization for multi-extent thread bindings in y and z dimensions
* lint
* [CI] Add TMA descriptor attribute to transformed module in test case
* refactor code
* enhance tutorial
* Enhance error handling and code generation in CUDA and TileLang components
This commit introduces several improvements across multiple files:
- Added more informative error messages in GEMM layout checks
- Updated CUDA codegen to support more flexible function signature generation
- Improved TMA descriptor initialization and kernel dispatch logic
- Refined library generation and source code parsing utilities
- Enhanced error handling in various adapter and wrapper classes
* Add thread tag validation for warp specialization
Introduce a ThreadTagChecker to validate that a PrimFunc only uses threadIdx.x before applying warp specialization. This prevents unintended transformations on kernels with complex thread binding and provides a clear warning to users about potential issues with warp specialization.
* Update TileLang Profiling and Compilation in Flash Decoding Examples
Refactor the profiling and compilation workflow in two flash decoding example scripts:
- Replace `tilelang.lower()` and `tilelang.Profiler()` with `tilelang.compile()`
- Simplify profiler initialization using `get_profiler()`
- Update method calls to use the new profiler and compiled kernel objects
- Maintain existing performance benchmarking and validation logic
* Refactor and clean up code formatting in TileLang testing and adapter modules
This commit includes several code style and formatting improvements:
- Adjust whitespace and line breaks in test files
- Improve code formatting in CUDA source wrapper and adapter utilities
- Enhance readability of function calls and argument handling
- Remove unnecessary whitespace and standardize indentation
- Simplify function signatures and argument parsing
* Refactor CUDA codegen and improve code formatting
This commit includes several improvements to CUDA code generation and formatting:
- Enhance function signature generation in CodeGenTileLangCUDA
- Improve code formatting and readability in CUDA-related files
- Simplify parameter handling and type annotations
- Clean up whitespace and line breaks in codegen and layout files
---------
Co-authored-by: Ubuntu <dlisuser@h100testl730RPS.xu5snccwrbtejcqqalluoku5hb.xx.internal.cloudapp.net>
* [Feature] Add CTypes JIT kernel support for dynamic shapes and multi-stream execution
- Enhance CtypesKernelAdapter to handle dynamic symbolic shapes
- Add support for multi-stream kernel execution in CTypes backend
- Implement dynamic shape handling in test_tilelang_jit_gemm_ctypes.py
- Add symbolic shape utility function in tilelang.language
- Update profiler to improve flexibility in benchmark selection
* Remove redundant thread binding in GEMM kernel implementations
- Remove unnecessary `thread_binding` line in GEMM kernel functions
- Clean up code in `examples/gemm/README.md` and `testing/python/kernel/test_tilelang_kernel_int4_gemm_mma.py`
- Enhance code readability by removing redundant thread binding annotation
* Fix indentation in int4 GEMM kernel test file
- Correct indentation for function calls in `test_tilelang_kernel_int4_gemm_mma.py`
- Remove extra indentation in `mma_emitter.ldmatrix_a()` and `mma_emitter.ldmatrix_b()` calls
- Improve code formatting for better readability
* [Feature] Add Cython JIT kernel support for dynamic shapes and multi-stream execution
- Implement CythonKernelAdapter to handle dynamic symbolic shapes
- Add support for multi-stream kernel execution in Cython backend
- Create comprehensive test suite for Cython GEMM kernel in test_tilelang_jit_gemm_cython.py
- Update JITKernel to include "cython" as a valid execution backend
- Add Cython-specific wrapper and library generation modules
- Update .gitignore to exclude Cython cache directory
- Modify setup.py to include Cython source files in package data
* lint fix
* [Refactor] Replace JITKernel with compile() function for kernel compilation
- Add new `compile()` function in tilelang/jit/__init__.py as a wrapper for JITKernel
- Update multiple test files and examples to use `tilelang.compile()` instead of `tilelang.JITKernel()`
- Modify kernel adapters to support optional kernel-only source retrieval
- Update `__init__.py` to import the new `compile()` function
- Improve kernel source retrieval for different execution backends
* lint fix
* remove debug print
* Add C/C++ compiler utility module and update Cython JIT kernel support
- Introduce new `tilelang/contrib/cc.py` module with cross-platform C/C++ compiler utilities
- Add functions to detect and retrieve system C/C++ compilers
- Implement cross-compilation and shared library creation support
- Update Cython JIT kernel to validate C++ compiler availability
- Modify Cython adapter to use detected C++ compiler for library generation
* Refactor float8 dtype mapping in tensor utility module
- Move float8_dtype_map inside adapt_torch2tvm function
- Simplify global scope by localizing the dtype mapping
- Maintain existing functionality for converting torch float8 tensors to TVM ndarray
* Refactor float8 dtype mapping in tensor utility module
- Move float8_dtype_map inside adapt_torch2tvm function
- Simplify global scope by localizing the dtype mapping
- Maintain existing functionality for converting torch float8 tensors to TVM ndarray
* revert
* Enhance Cython JIT adapter with Cython compiler detection
- Add `get_cython_compiler()` function to dynamically locate Cython executable
- Update Cython adapter to use detected Cython compiler instead of hardcoded command
- Raise an exception if no Cython compiler is found
- Update requirements.txt to specify minimum PyTorch version (>=2.2.0)
* Fix Cython kernel wrapper stream handling and type annotations
- Update stream parameter type to int64_t for better compatibility
- Directly use torch.cuda.current_stream().cuda_stream instead of casting
- Improve type safety and precision in Cython kernel wrapper
* [Feature] Add CTypes JIT kernel support for dynamic shapes and multi-stream execution
- Enhance CtypesKernelAdapter to handle dynamic symbolic shapes
- Add support for multi-stream kernel execution in CTypes backend
- Implement dynamic shape handling in test_tilelang_jit_gemm_ctypes.py
- Add symbolic shape utility function in tilelang.language
- Update profiler to improve flexibility in benchmark selection
* Remove redundant thread binding in GEMM kernel implementations
- Remove unnecessary `thread_binding` line in GEMM kernel functions
- Clean up code in `examples/gemm/README.md` and `testing/python/kernel/test_tilelang_kernel_int4_gemm_mma.py`
- Enhance code readability by removing redundant thread binding annotation
* Fix indentation in int4 GEMM kernel test file
- Correct indentation for function calls in `test_tilelang_kernel_int4_gemm_mma.py`
- Remove extra indentation in `mma_emitter.ldmatrix_a()` and `mma_emitter.ldmatrix_b()` calls
- Improve code formatting for better readability
* bump version into v0.1.0
* [Enhancement] Add custom develop command for editable installs and update .gitignore
* [Documentation] Update README to include system dependencies installation instructions
* [Build] Update setup.py to support library file copying for both release and develop modes
* [Build] Refactor library file copying logic in setup.py
* [Documentation] Remove unnecessary install section header in Installation.md
* [Build] Add tox configuration and local distribution script for multi-Python version support
* [Build] Improve git submodule update function with better error handling
* [Build] Update LLVM configuration path in ROCm installation script
* [Build] Add .tox/ to .gitignore for tox testing environment
* [Build] Add support for TVM prebuild path configuration in CMakeLists.txt
* [Cleanup] Remove unused TVM runtime error codes header
* [Cleanup] Fix TVM grid constant type reference in CUDA module
* [Cleanup] Remove unused customized_code function from IR module
* [Feature] Add TileLang thread synchronization and storage access analysis passes
* [Build] Reorder DLL search path directories for more flexible library loading
* [Refactor] Improve thread synchronization and library path handling
- Rename ThreadSync and TileLangThreadSync functions in C++ code
- Update Python docstring for ThreadSync with more detailed description
- Reorder library path detection in tilelang environment setup
- Minor comment and code cleanup in CUDA and warp specialization modules
* [Refactor] Improve thread synchronization code style and formatting
- Standardize pointer type spacing in storage_access.h and storage_access.cc
- Update whitespace and indentation in thread_storage_sync.cc
- Reorder include statements in thread_partial_sync.cc
- Minor code formatting improvements across thread synchronization files
* [Refactor] Fix global function registration for ThreadSync
- Correct global function registration to use ThreadSync instead of TileLangThreadSync
- Update TVM global registration to match recent refactoring efforts
* [Refactor] Simplify ThreadSync global function registration
- Remove unnecessary whitespace in global function registration
- Compact the TVM global registration line for ThreadSync
* [Feature] Add WebGPU code generation support in TileLang
- Implement WebGPU code generator (codegen_webgpu.cc and codegen_webgpu.h)
- Add WebGPU target support in lower.py and target.py
- Update CMakeLists.txt to include WebGPU codegen source files
- Introduce WebGPU-specific code generation for WGSL shader language
* [Refactor] Improve WebGPU code generation formatting and readability
- Enhance code formatting in codegen_webgpu.cc and codegen_webgpu.h
- Standardize pointer type spacing and indentation
- Improve line breaks and reduce line length for better readability
- Minor code style improvements in WebGPU code generation
* [Test] Add WebGPU matrix multiplication code generation test
- Implement test_webgpu_codegen.py for WebGPU matrix multiplication
- Add assert_gemm_codegen function to validate WebGPU code generation
- Include basic matrix multiplication kernel test case
* Update README with WebGPU codegen support announcement
* Support multi version pypi package build via tox
* Add support for CPU device backend with C code generation
- Introduce `is_cpu_device_backend` function to detect CPU backend with C code generation
- Modify `lower` function to handle special case of CPU device backend
- Update host and device call filtering for CPU backend
- Add conditional source code generation for C host target
- Extend JITKernel to support optional target_host parameter
* lint fix
* Enhance JIT kernel adapters with CTypes and Torch C++ backends
- Add CtypesKernelAdapter with dynamic library generation and kernel wrapping
- Implement TorchCPPKernelAdapter for CUDA kernel compilation
- Refactor BaseKernelAdapter to support more flexible initialization
- Improve error handling and argument processing in kernel adapters
- Update adapter initialization to support various execution backends
* Refactor and clean up code style in JIT CTypes adapter modules
- Apply consistent code formatting and whitespace in CTypes adapter files
- Remove unused imports and improve import organization
- Enhance readability of code in adapter, libgen, and wrapper modules
- Add missing whitespace and improve line breaks
- Minor linting and code style improvements across CTypes adapter files
* Add test for TileLang JIT GEMM with CTypes backend
- Implement comprehensive test for matrix multiplication using CTypes execution backend
- Create test functions for GEMM with float16 data type
- Add kernel source verification with custom callback
- Implement reference implementation using PyTorch for result validation
- Support various matrix multiplication configurations (transposition, block sizes)
* test fix
* Update TileLang JIT callback registration with override parameter
- Modify tilelang_callback_cuda_postproc to use @tvm.register_func(override=True)
- Ensure proper function registration with ability to replace existing implementations
* Reorder TileLang lowering passes for Hopper intrinsics and PTX async copy
- Adjust the order of LowerHopperIntrin and InjectPTXAsyncCopy passes
- Move these passes to ensure correct synchronization and device preparation
* Rebase main
* shared.dyn
* lint fix
* test fix
* Add environment variable handling for TileLang template and CUTLASS paths
- Introduce fallback logic for TL_TEMPLATE_PATH environment variable
- Add support for optional TL_CUTLASS_PATH configuration
- Include TODO comment for future environment variable renaming
* bump version into v0.1.0
* [Enhancement] Add custom develop command for editable installs and update .gitignore
* [Documentation] Update README to include system dependencies installation instructions
* [Build] Update setup.py to support library file copying for both release and develop modes
* [Build] Refactor library file copying logic in setup.py
* [Documentation] Remove unnecessary install section header in Installation.md
* [Build] Add tox configuration and local distribution script for multi-Python version support
* [Build] Improve git submodule update function with better error handling
* [Build] Update LLVM configuration path in ROCm installation script
* [Build] Add .tox/ to .gitignore for tox testing environment
* [Build] Add support for TVM prebuild path configuration in CMakeLists.txt
* [Cleanup] Remove unused TVM runtime error codes header
* [Cleanup] Fix TVM grid constant type reference in CUDA module
* [Cleanup] Remove unused customized_code function from IR module
* [Feature] Add TileLang thread synchronization and storage access analysis passes
* [Build] Reorder DLL search path directories for more flexible library loading
* [Refactor] Improve thread synchronization and library path handling
- Rename ThreadSync and TileLangThreadSync functions in C++ code
- Update Python docstring for ThreadSync with more detailed description
- Reorder library path detection in tilelang environment setup
- Minor comment and code cleanup in CUDA and warp specialization modules
* [Refactor] Improve thread synchronization code style and formatting
- Standardize pointer type spacing in storage_access.h and storage_access.cc
- Update whitespace and indentation in thread_storage_sync.cc
- Reorder include statements in thread_partial_sync.cc
- Minor code formatting improvements across thread synchronization files
* [Refactor] Fix global function registration for ThreadSync
- Correct global function registration to use ThreadSync instead of TileLangThreadSync
- Update TVM global registration to match recent refactoring efforts
* [Refactor] Simplify ThreadSync global function registration
- Remove unnecessary whitespace in global function registration
- Compact the TVM global registration line for ThreadSync
* [Feature] Add WebGPU code generation support in TileLang
- Implement WebGPU code generator (codegen_webgpu.cc and codegen_webgpu.h)
- Add WebGPU target support in lower.py and target.py
- Update CMakeLists.txt to include WebGPU codegen source files
- Introduce WebGPU-specific code generation for WGSL shader language
* [Refactor] Improve WebGPU code generation formatting and readability
- Enhance code formatting in codegen_webgpu.cc and codegen_webgpu.h
- Standardize pointer type spacing and indentation
- Improve line breaks and reduce line length for better readability
- Minor code style improvements in WebGPU code generation
* [Test] Add WebGPU matrix multiplication code generation test
- Implement test_webgpu_codegen.py for WebGPU matrix multiplication
- Add assert_gemm_codegen function to validate WebGPU code generation
- Include basic matrix multiplication kernel test case
* Update README with WebGPU codegen support announcement
* Support multi version pypi package build via tox
* Add support for CPU device backend with C code generation
- Introduce `is_cpu_device_backend` function to detect CPU backend with C code generation
- Modify `lower` function to handle special case of CPU device backend
- Update host and device call filtering for CPU backend
- Add conditional source code generation for C host target
- Extend JITKernel to support optional target_host parameter
* lint fix
* Enhance JIT kernel adapters with CTypes and Torch C++ backends
- Add CtypesKernelAdapter with dynamic library generation and kernel wrapping
- Implement TorchCPPKernelAdapter for CUDA kernel compilation
- Refactor BaseKernelAdapter to support more flexible initialization
- Improve error handling and argument processing in kernel adapters
- Update adapter initialization to support various execution backends
* Refactor and clean up code style in JIT CTypes adapter modules
- Apply consistent code formatting and whitespace in CTypes adapter files
- Remove unused imports and improve import organization
- Enhance readability of code in adapter, libgen, and wrapper modules
- Add missing whitespace and improve line breaks
- Minor linting and code style improvements across CTypes adapter files
* Add test for TileLang JIT GEMM with CTypes backend
- Implement comprehensive test for matrix multiplication using CTypes execution backend
- Create test functions for GEMM with float16 data type
- Add kernel source verification with custom callback
- Implement reference implementation using PyTorch for result validation
- Support various matrix multiplication configurations (transposition, block sizes)
* test fix
* Update TileLang JIT callback registration with override parameter
- Modify tilelang_callback_cuda_postproc to use @tvm.register_func(override=True)
- Ensure proper function registration with ability to replace existing implementations
* bump version into v0.1.0
* [Enhancement] Add custom develop command for editable installs and update .gitignore
* [Documentation] Update README to include system dependencies installation instructions
* [Build] Update setup.py to support library file copying for both release and develop modes
* [Build] Refactor library file copying logic in setup.py
* [Documentation] Remove unnecessary install section header in Installation.md
* [Build] Add tox configuration and local distribution script for multi-Python version support
* [Build] Improve git submodule update function with better error handling
* [Build] Update LLVM configuration path in ROCm installation script
* [Build] Add .tox/ to .gitignore for tox testing environment
* [Build] Add support for TVM prebuild path configuration in CMakeLists.txt
* [Cleanup] Remove unused TVM runtime error codes header
* [Cleanup] Fix TVM grid constant type reference in CUDA module
* [Cleanup] Remove unused customized_code function from IR module
* [Feature] Add TileLang thread synchronization and storage access analysis passes
* [Build] Reorder DLL search path directories for more flexible library loading
* [Refactor] Improve thread synchronization and library path handling
- Rename ThreadSync and TileLangThreadSync functions in C++ code
- Update Python docstring for ThreadSync with more detailed description
- Reorder library path detection in tilelang environment setup
- Minor comment and code cleanup in CUDA and warp specialization modules
* [Refactor] Improve thread synchronization code style and formatting
- Standardize pointer type spacing in storage_access.h and storage_access.cc
- Update whitespace and indentation in thread_storage_sync.cc
- Reorder include statements in thread_partial_sync.cc
- Minor code formatting improvements across thread synchronization files
* [Refactor] Fix global function registration for ThreadSync
- Correct global function registration to use ThreadSync instead of TileLangThreadSync
- Update TVM global registration to match recent refactoring efforts
* [Refactor] Simplify ThreadSync global function registration
- Remove unnecessary whitespace in global function registration
- Compact the TVM global registration line for ThreadSync
* [Feature] Add WebGPU code generation support in TileLang
- Implement WebGPU code generator (codegen_webgpu.cc and codegen_webgpu.h)
- Add WebGPU target support in lower.py and target.py
- Update CMakeLists.txt to include WebGPU codegen source files
- Introduce WebGPU-specific code generation for WGSL shader language
* [Refactor] Improve WebGPU code generation formatting and readability
- Enhance code formatting in codegen_webgpu.cc and codegen_webgpu.h
- Standardize pointer type spacing and indentation
- Improve line breaks and reduce line length for better readability
- Minor code style improvements in WebGPU code generation
* [Test] Add WebGPU matrix multiplication code generation test
- Implement test_webgpu_codegen.py for WebGPU matrix multiplication
- Add assert_gemm_codegen function to validate WebGPU code generation
- Include basic matrix multiplication kernel test case
* Update README with WebGPU codegen support announcement
* bump version into v0.1.0
* [Enhancement] Add custom develop command for editable installs and update .gitignore
* [Documentation] Update README to include system dependencies installation instructions
* [Build] Update setup.py to support library file copying for both release and develop modes
* [Build] Refactor library file copying logic in setup.py
* [Documentation] Remove unnecessary install section header in Installation.md
* [Build] Add tox configuration and local distribution script for multi-Python version support
* [Build] Improve git submodule update function with better error handling
* [Build] Update LLVM configuration path in ROCm installation script
* [Build] Add .tox/ to .gitignore for tox testing environment
* [Build] Add support for TVM prebuild path configuration in CMakeLists.txt
* [Cleanup] Remove unused TVM runtime error codes header
* [Cleanup] Fix TVM grid constant type reference in CUDA module
* [Cleanup] Remove unused customized_code function from IR module
* [Feature] Add TileLang thread synchronization and storage access analysis passes
* [Build] Reorder DLL search path directories for more flexible library loading
* [Refactor] Improve thread synchronization and library path handling
- Rename ThreadSync and TileLangThreadSync functions in C++ code
- Update Python docstring for ThreadSync with more detailed description
- Reorder library path detection in tilelang environment setup
- Minor comment and code cleanup in CUDA and warp specialization modules
* [Refactor] Improve thread synchronization code style and formatting
- Standardize pointer type spacing in storage_access.h and storage_access.cc
- Update whitespace and indentation in thread_storage_sync.cc
- Reorder include statements in thread_partial_sync.cc
- Minor code formatting improvements across thread synchronization files
* [Refactor] Fix global function registration for ThreadSync
- Correct global function registration to use ThreadSync instead of TileLangThreadSync
- Update TVM global registration to match recent refactoring efforts
* [Refactor] Simplify ThreadSync global function registration
- Remove unnecessary whitespace in global function registration
- Compact the TVM global registration line for ThreadSync
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Enhancement] Add support for FP8 data types and global barriers in CUDA codegen
* Fix formatting in CUDA FP8 header file for consistency
* Refactor CI workflow to use 'tilelang_ci' virtual environment and update CUDA type printing for better clarity
* Update submodule 'tvm' to latest commit for improved functionality
* Refactor execution backend references from 'dl_pack' to 'dlpack' for consistency and clarity; add apply_simplify function to simplify PrimFunc or IRModule.
* Refactor CUDA code for improved readability; clean up formatting and remove unnecessary whitespace in multiple files.
* Refactor import statement in test_tilelang_kernel_dequantize_gemm.py to use 'tilelang.language' for consistency
* Add CUDA requirements to FP8 test cases and update references for clarity
* Add a blank line for improved readability in test_tilelang_kernel_fp8_gemm_mma.py
* Fix data type in reference result calculation for consistency in test_tilelang_kernel_gemm_mma_intrinsic.py
* Add CUDA requirements and FP8 test cases for matmul and gemv simulations
* Remove debug print statements and use tilelang's testing assertion for result validation in test_tilelang_kernel_gemm_mma_intrinsic.py
* Remove outdated comment regarding FP8 tests in test_tilelang_kernel_gemv_simt.py
* Add BF16 support to matrix multiplication and introduce corresponding test cases
* Add a blank line for improved readability in BF16 GEMM test
* Update acknowledgements in README to include supervision by Zhi Yang at Peking University
* enhance acknowledgement
* Replace tutorial on memory layout optimization with new tutorial on writing high-performance kernels with thread primitives
* Update subproject commit for TVM dependency
* Update subproject commit for TVM dependency
* Add int4_t type and functions for packing char values in CUDA common header
* Add plot_layout example and implement GetForwardVars method in layout classes
* Refactor code for improved readability by adjusting line breaks and formatting in layout and test files
* Fix formatting by removing unnecessary line break in layout.h
* Refactor make_int4 function for improved readability by adjusting parameter formatting
* Add legend to plot_layout for improved clarity of thread and local IDs
* Remove unnecessary dependencies from requirements files for cleaner setup
* Remove flash_mha.py and add .gitkeep to deepseek_mla directory
* Add build requirements and update installation scripts for improved setup
* Introduce carver
* Refactor imports and improve code formatting for consistency
* Add unit tests for carver recommendation hints
* lint fix
* Enhance ElementwiseTemplate and BaseTemplate with detailed docstrings for improved code documentation and clarity
* Refactor import statements and clean up whitespace in template files for improved readability
* Add README.md for Carver framework with usage examples and architecture support
* Refactor import statement in matmul_analysis.py for consistency
* Refactor TileDict and TensorCorePolicy methods for improved clarity and functionality
* Add tests for general matrix multiplication emit configurations
* Refactor formatting in test_tilelang_carver_generate_hints.py for improved readability
* Add FlashAttentionTemplate and related functionality for hint recommendations
* Refactor whitespace in FlashAttentionTemplate and test_tilelang_carver_recommend_hints for improved readability
* [CI][Test] Add test cases for tilelang transform MultiVersionBuffer and WarpSpecialized
* Relax the mismatch ratio restrictions in the flash_linear_attention and mha tests
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Enhancement] Add support for FP8 data types and global barriers in CUDA codegen
* Fix formatting in CUDA FP8 header file for consistency
* Refactor CI workflow to use 'tilelang_ci' virtual environment and update CUDA type printing for better clarity
* Update submodule 'tvm' to latest commit for improved functionality
* Refactor execution backend references from 'dl_pack' to 'dlpack' for consistency and clarity; add apply_simplify function to simplify PrimFunc or IRModule.
* Refactor CUDA code for improved readability; clean up formatting and remove unnecessary whitespace in multiple files.
* Refactor import statement in test_tilelang_kernel_dequantize_gemm.py to use 'tilelang.language' for consistency
* Add CUDA requirements to FP8 test cases and update references for clarity
* Add a blank line for improved readability in test_tilelang_kernel_fp8_gemm_mma.py
* Fix data type in reference result calculation for consistency in test_tilelang_kernel_gemm_mma_intrinsic.py
* Add CUDA requirements and FP8 test cases for matmul and gemv simulations
* Remove debug print statements and use tilelang's testing assertion for result validation in test_tilelang_kernel_gemm_mma_intrinsic.py
* Remove outdated comment regarding FP8 tests in test_tilelang_kernel_gemv_simt.py
* Add BF16 support to matrix multiplication and introduce corresponding test cases
* Add a blank line for improved readability in BF16 GEMM test
* Update acknowledgements in README to include supervision by Zhi Yang at Peking University
* enhance acknowledgement
* Replace tutorial on memory layout optimization with new tutorial on writing high-performance kernels with thread primitives
* Update subproject commit for TVM dependency
* Update subproject commit for TVM dependency
* Add int4_t type and functions for packing char values in CUDA common header
* Add plot_layout example and implement GetForwardVars method in layout classes
* Refactor code for improved readability by adjusting line breaks and formatting in layout and test files
* Fix formatting by removing unnecessary line break in layout.h
* Refactor make_int4 function for improved readability by adjusting parameter formatting
* Add legend to plot_layout for improved clarity of thread and local IDs
* Remove unnecessary dependencies from requirements files for cleaner setup
* Remove flash_mha.py and add .gitkeep to deepseek_mla directory
* Add build requirements and update installation scripts for improved setup
* Introduce carver
* Refactor imports and improve code formatting for consistency
* Add unit tests for carver recommendation hints
* lint fix
* Enhance ElementwiseTemplate and BaseTemplate with detailed docstrings for improved code documentation and clarity
* Refactor import statements and clean up whitespace in template files for improved readability
* Add README.md for Carver framework with usage examples and architecture support
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Enhancement] Add support for FP8 data types and global barriers in CUDA codegen
* Fix formatting in CUDA FP8 header file for consistency
* Refactor CI workflow to use 'tilelang_ci' virtual environment and update CUDA type printing for better clarity
* Update submodule 'tvm' to latest commit for improved functionality
* Refactor execution backend references from 'dl_pack' to 'dlpack' for consistency and clarity; add apply_simplify function to simplify PrimFunc or IRModule.
* Refactor CUDA code for improved readability; clean up formatting and remove unnecessary whitespace in multiple files.
* Refactor import statement in test_tilelang_kernel_dequantize_gemm.py to use 'tilelang.language' for consistency
* Add CUDA requirements to FP8 test cases and update references for clarity
* Add a blank line for improved readability in test_tilelang_kernel_fp8_gemm_mma.py
* Fix data type in reference result calculation for consistency in test_tilelang_kernel_gemm_mma_intrinsic.py
* Add CUDA requirements and FP8 test cases for matmul and gemv simulations
* Remove debug print statements and use tilelang's testing assertion for result validation in test_tilelang_kernel_gemm_mma_intrinsic.py
* Remove outdated comment regarding FP8 tests in test_tilelang_kernel_gemv_simt.py
* Add BF16 support to matrix multiplication and introduce corresponding test cases
* Add a blank line for improved readability in BF16 GEMM test
* Update acknowledgements in README to include supervision by Zhi Yang at Peking University
* enhance acknowledgement
* Replace tutorial on memory layout optimization with new tutorial on writing high-performance kernels with thread primitives
* Update subproject commit for TVM dependency
* Update subproject commit for TVM dependency
* Add int4_t type and functions for packing char values in CUDA common header
* Add plot_layout example and implement GetForwardVars method in layout classes
* Refactor code for improved readability by adjusting line breaks and formatting in layout and test files
* Fix formatting by removing unnecessary line break in layout.h
* Refactor make_int4 function for improved readability by adjusting parameter formatting
* [Dev] Add FlashDecoding example
* [CI][Test] Add test cases for tilelang kernel convolution
* [CI][Test] Add test cases for tilelang kernel FlashAttention
* Reduce the number of stages to ensure the shared memory allocation is valid
* Temporarily remove the dim128 case
* lint
* update einops in requirements-dev.txt
* update einops in requirements-test.txt
* remove einops in requirements-dev.txt
* [CI][Test] Add test cases for tilelang transform ClusterPlanning
* [CI][Test] Add test cases for tilelang transform LowerHopperIntrin
* [CI][Test] Add test cases for tilelang transform InjectFenceProxy
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Enhancement] Add support for FP8 data types and global barriers in CUDA codegen
* Fix formatting in CUDA FP8 header file for consistency
* Refactor CI workflow to use 'tilelang_ci' virtual environment and update CUDA type printing for better clarity
* Update submodule 'tvm' to latest commit for improved functionality
* Refactor execution backend references from 'dl_pack' to 'dlpack' for consistency and clarity; add apply_simplify function to simplify PrimFunc or IRModule.
* Refactor CUDA code for improved readability; clean up formatting and remove unnecessary whitespace in multiple files.
* Refactor import statement in test_tilelang_kernel_dequantize_gemm.py to use 'tilelang.language' for consistency
* Add CUDA requirements to FP8 test cases and update references for clarity
* Add a blank line for improved readability in test_tilelang_kernel_fp8_gemm_mma.py
* Fix data type in reference result calculation for consistency in test_tilelang_kernel_gemm_mma_intrinsic.py
* Add CUDA requirements and FP8 test cases for matmul and gemv simulations
* Remove debug print statements and use tilelang's testing assertion for result validation in test_tilelang_kernel_gemm_mma_intrinsic.py
* Remove outdated comment regarding FP8 tests in test_tilelang_kernel_gemv_simt.py
* Add BF16 support to matrix multiplication and introduce corresponding test cases
* Add a blank line for improved readability in BF16 GEMM test
* Update acknowledgements in README to include supervision by Zhi Yang at Peking University
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Enhancement] Add support for FP8 data types and global barriers in CUDA codegen
* Fix formatting in CUDA FP8 header file for consistency
* Refactor CI workflow to use 'tilelang_ci' virtual environment and update CUDA type printing for better clarity
* Update submodule 'tvm' to latest commit for improved functionality
* Refactor execution backend references from 'dl_pack' to 'dlpack' for consistency and clarity; add apply_simplify function to simplify PrimFunc or IRModule.
* Refactor CUDA code for improved readability; clean up formatting and remove unnecessary whitespace in multiple files.
* Refactor import statement in test_tilelang_kernel_dequantize_gemm.py to use 'tilelang.language' for consistency
* Add CUDA requirements to FP8 test cases and update references for clarity
* Add a blank line for improved readability in test_tilelang_kernel_fp8_gemm_mma.py
* Fix data type in reference result calculation for consistency in test_tilelang_kernel_gemm_mma_intrinsic.py
* Add CUDA requirements and FP8 test cases for matmul and gemv simulations
* Remove debug print statements and use tilelang's testing assertion for result validation in test_tilelang_kernel_gemm_mma_intrinsic.py
* Remove outdated comment regarding FP8 tests in test_tilelang_kernel_gemv_simt.py
* [Enhancement] Add VectorizeLoop function and update imports for compatibility
* [CI][Test] Improve test cases for vectorization and fix typos in parser comments
* lint fix
* Fix incorrect module reference for VectorizeLoop transformation
* Refactor vectorize_loop transformation by removing unused extent mutation logic
* [Dev] Add FlashDecoding example
* [CI][Test] Add test cases for tilelang kernel convolution
* [CI][Test] Add test cases for tilelang kernel FlashAttention
* Reduce the number of stages to ensure the shared memory allocation is valid
* Temporarily remove the dim128 case
* lint
* update einops in requirements-dev.txt
* update einops in requirements-test.txt
* remove einops in requirements-dev.txt
* [CI][Test] Add test cases for tilelang transform ClusterPlanning
* [CI][Test] Add test cases for tilelang transform LowerHopperIntrin
* implement jit test case
* [Dev] implement auto tune test case for matrix multiplication
* Implement test for legalize memory access and vectorized loop
* lint fix
* introduce run_once
* Refactor callback function names for consistency and improve code readability
* enhance documentations
* lint fix
* lint fix
* lint fix
* lint fix
* fix formatting issues in rt_mod_hip.cc
* add random seed initialization for deterministic testing
* [Dev] Add FlashDecoding example
* [CI][Test] Add test cases for tilelang kernel convolution
* [CI][Test] Add test cases for tilelang kernel FlashAttention
* Reduce the number of stages to ensure the shared memory allocation is valid
* Temporarily remove the dim128 case
* lint
* update einops in requirements-dev.txt
* update einops in requirements-test.txt
* remove einops in requirements-dev.txt
* [CI][Test] Add test cases for tilelang transform ClusterPlanning
* [Dev] Add FlashDecoding example
* [CI][Test] Add test cases for tilelang kernel convolution
* [CI][Test] Add test cases for tilelang kernel FlashAttention
* Reduce the number of stages to ensure the shared memory allocation is valid
* Temporarily remove the dim128 case
* lint
* update einops in requirements-dev.txt
* update einops in requirements-test.txt
* remove einops in requirements-dev.txt
* implement jit test case
* [Dev] implement auto tune test case for matrix multiplication
* Implement test for legalize memory access and vectorized loop
* lint fix