Skip to content

chore: Update coverage include list#8

Closed
github-actions[bot] wants to merge 3 commits intoamd-integrationfrom
update-coverage-include-2
Closed

chore: Update coverage include list#8
github-actions[bot] wants to merge 3 commits intoamd-integrationfrom
update-coverage-include-2

Conversation

@github-actions
Copy link
Copy Markdown

Coverage Include List Update

This PR was automatically generated after changes were merged to amd-integration.

The coverage include list in pyproject.toml has been updated to reflect the current set of AMD/HIP modified files compared to upstream.

Changes

  • Updated [tool.coverage.run].include list based on git merge-base upstream/main HEAD

Modified Files Count

Check the commit for the updated list of files.


Automated by GitHub Actions

diptorupd and others added 3 commits January 26, 2026 12:59
* Initial files for code coverage automation

* Remove include list from pyproject.toml

* Improvements

* Fixes
* Test PR

* Test...
diptorupd added a commit that referenced this pull request Jan 28, 2026
This PR improves the CMake build system for the C++ API of flashinfer,
making it more modular, easier to configure, and overall easier to
integrate into downstream projects. The changes introduce a proper
component-based installation for different usage scenarios for the C++
API, adds CMake-based dependency management, and generally offers a
cleaner build organization.

The C++ sources, tests, and benchmarks are now reorganized inside a
`libflashinfer` directory. The original directories are left unmodified.

flashinfer/
├── CMakeLists.txt
├── include/
│   └── flashinfer/
└── src/

flashinfer/
├── CMakeLists.txt
├── cmake/
│   └── utils/
│   │   └── ConfigureTargets.cmake
│   ├── Config.cmake.in
│   ├── Dependencies.cmake
│   ├── Options.cmake
├── libflashinfer/
│   ├── CMakeLists.txt
│   ├── include/
│   │   └── flashinfer/
│   │       ├── attention/
│   │       └── distributed/
│   │       └── gemm/
│   ├── tests/
│   │   ├── CMakeLists.txt          # Consistent test configuration
│   │   └── fp8/                    # FP8-specific tests
│   ├── utils/
│   │   └── fp8/                    # FP8 utility files
│   └── benchmarks/
│       ├── CMakeLists.txt          # Standardized benchmark setup
│       └── fp8/                    # FP8-specific benchmarks

- Separated flashinfer CMake option definitions into distinct files for
better organization
- Created utility modules for configuring tests and benchmarks
consistently
- Consolidated dependency management in a single location
- Added a flashinferconfig for downstream projects to be able to do
`find_package(flashinfer)` in their CMake scripts.

- The C++ API is broken down into multiple components: **Headers,
Kernels, TVMBinding, Distributed.**
- Components can be configured and built separately
- Ex1. Configuring the C++ API to build AOT kernels, C++ unit tests and
benchmarks
    ```bash
cmake .. -GNinja -DFLASHINFER_CUDA_ARCHITECTURES=80
-DFLASHINFER_BUILD_KERNELS=ON -DFLASHINFER_UNITTESTS=ON
-DFLASHINFER_CXX_BENCHMARKS=ON
-DFLASHINFER_CUTLASS_DIR=../3rdparty/cutlass
-DCMAKE_INSTALL_PREFIX=~/devel/install
    ```
    - Ex2. Build various components as needed
    ```bash
        # Build the test_single_decode unit tests
        cmake --build . --target test_single_decode
        # Build all unit tests (broken right now)
        cmake --build . --target build_tests
        # Build bench_single_decode
        cmake --build . --target bench_single_decode
        # Build all benchmarks (broken right now)
        cmake --build . --target build_benchmarks
    ```
   - Ex3. Install components
       ```bash
           cmake --build . --target install
       ```
- Added CMake targets to generate sources based on the same logic as in
the current `setup.py`. Generated sources are now placed under the
`CMAKE_CURRENT_BINARY_DIR`

   - Ex4. Install components
       ```bash
           cmake --build . --target generate_kernels
       ```

These changes are primarily meant to streamline the changes to add new
CMake config options for a proposed HIP back end. However, it is
foreseeable to build upon these changes to convert the build system to a
fully unified CMake-based using `scikit-build` and use a single
configuration system for both C++ and Python APIs.
diptorupd pushed a commit that referenced this pull request Jan 28, 2026
In this PR I remove the `libtorch` dependency and removed
`test_page.cpp`. `test_page.cpp` is the only unit test that uses
libtorch. However, we also have a pytest for testing page. We will use
that for validation.

Removing the libtorch dependency will help us speed docker builds and
remove additional dependencies.


```Test project /root/flashinfer/libflashinfer/tests/hip/build
    Start 1: MathTest
1/8 Test #1: MathTest ............................   Passed    0.31 sec
    Start 2: PosEncTest
2/8 Test #2: PosEncTest ..........................   Passed    0.31 sec
    Start 3: CascadeTest
3/8 Test #3: CascadeTest .........................   Passed  1369.12 sec
    Start 4: SingleDecodeTest
4/8 Test #4: SingleDecodeTest ....................   Passed  7726.35 sec
    Start 5: BatchDecodeTest
5/8 Test #5: BatchDecodeTest .....................   Passed  811.61 sec
    Start 6: test_mfma_fp32_16x16x16fp16
6/8 Test #6: test_mfma_fp32_16x16x16fp16 .........   Passed    0.30 sec
    Start 7: test_transpose_4x4_half_registers
7/8 Test #7: test_transpose_4x4_half_registers ...   Passed    0.28 sec
    Start 8: test_rowsum
8/8 Test #8: test_rowsum .........................   Passed    0.27 sec

100% tests passed, 0 tests failed out of 8
```
diptorupd added a commit that referenced this pull request Jan 28, 2026
* Updates to permuted_smem.cuh

    - Updated the upcast_size function to always require a VectorWidthBits tparam
    - Added load_fragment, load_fragment_and_quad_transpose, store_fragment, load_vector_async,
      store_64b, and store_vector fuctions.
@diptorupd diptorupd closed this Feb 3, 2026
@diptorupd diptorupd deleted the update-coverage-include-2 branch February 3, 2026 23:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant