[FlagTune] Add (XGB+GA) FlagTune support for Triton v3.6.x #9
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: NV3.6-Build-And-Test | |
| on: | |
| schedule: | |
| - cron: '0 21 * * *' | |
| push: | |
| branches: [ "main", "triton_v3.6.x" ] | |
| pull_request: | |
| branches: [ "main", "triton_v3.6.x" ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| nv36x-unit-test: | |
| runs-on: nvidia3.6 | |
| if: ${{ github.repository == 'FlagTree/flagtree' || github.repository == 'flagos-ai/flagtree' }} | |
| steps: | |
| - name: Setup environment | |
| shell: bash | |
| run: | | |
| source ~/env.sh | |
| env | grep -E '^(http_proxy|https_proxy|all_proxy|no_proxy)=' >> $GITHUB_ENV || true | |
| - name: Smart Checkout | |
| uses: flagos-ai/FlagTree/.github/actions/smart-checkout@main | |
| with: | |
| checkout_version: 'v6' | |
| - name: Check if backend-relevant files changed | |
| id: check_backend | |
| uses: flagos-ai/FlagTree/.github/actions/check-backend-changed@main | |
| with: | |
| backend: nvidia | |
| - name: Detect Target Branch | |
| shell: bash | |
| run: | | |
| set -x | |
| if [ "${{ github.event_name }}" = "pull_request" ]; then | |
| TARGET_BRANCH="${{ github.base_ref }}" | |
| else | |
| TARGET_BRANCH="${{ github.ref_name }}" | |
| fi | |
| echo "TARGET_BRANCH=$TARGET_BRANCH" >> $GITHUB_ENV | |
| echo "TARGET_BRANCH=$TARGET_BRANCH" | |
| - name: Build FlagTree | |
| if: ${{ steps.check_backend.outputs.should_skip != 'true' }} | |
| shell: bash | |
| run: | | |
| set -x | |
| source ~/env-3.6.sh | |
| export USE_FLAGCX=ON | |
| MAX_JOBS=32 python3 -m pip install . --no-build-isolation | |
| - name: Unit Test | |
| if: ${{ steps.check_backend.outputs.should_skip != 'true' }} | |
| shell: bash | |
| run: | | |
| set -x | |
| source ~/env.sh | |
| ## python tutorials | |
| python3 python/tutorials/01-vector-add.py --only_unit_test | |
| python3 python/tutorials/02-fused-softmax.py --only_unit_test | |
| python3 python/tutorials/03-matrix-multiplication.py --only_unit_test | |
| python3 python/tutorials/04-low-memory-dropout.py --only_unit_test | |
| python3 python/tutorials/05-layer-norm.py --only_unit_test | |
| python3 python/tutorials/06-fused-attention.py --only_unit_test | |
| python3 python/tutorials/07-extern-functions.py --only_unit_test | |
| python3 python/tutorials/08-grouped-gemm.py --only_unit_test | |
| python3 python/tutorials/09-persistent-matmul.py --only_unit_test | |
| python3 python/tutorials/11-programmatic-dependent-launch.py --only_unit_test | |
| ## python unit test | |
| python3 -m pytest -s python/test/unit/cuda | |
| python3 -m pytest -s python/test/unit/instrumentation | |
| python3 -m pytest -s python/test/unit/language \ | |
| --ignore=python/test/unit/language/test_line_info.py | |
| python3 -m pytest -s python/test/unit/runtime | |
| if [ -d "python/test/operators" ]; then | |
| python3 -m pytest -s python/test/operators | |
| fi | |
| ## flagtree tle python tutorials | |
| python3 python/tutorials/tle/01-fft.py | |
| python3 python/tutorials/tle/02-moe_align_block_size.py | |
| python3 python/tutorials/tle/03-topk.py | |
| # python3 python/tutorials/tle/04-cluster-gemm.py # TODO: sometimes failed | |
| python3 python/tutorials/tle/deepseek_v32/01-topk_selector.py | |
| python3 python/tutorials/tle/deepseek_v32/02-sparse-mla.py | |
| ## flagtree tle python unit test | |
| python3 -m pytest -s python/test/tle/integration | |
| python3 -m pytest -s python/test/tle/unit \ | |
| --ignore=python/test/tle/unit/test_tle_distributed_d2d.py \ | |
| --ignore=python/test/tle/unit/test_tle_get_local_pe.py | |
| CUDA_LAUNCH_BLOCKING=1 bash python/test/tle/unit/test_tle_distributed_d2d.sh | |
| CUDA_LAUNCH_BLOCKING=1 bash python/test/tle/unit/test_tle_get_local_pe.sh | |
| ## flagtree hints python tutorials | |
| python3 python/tutorials/hints/01/01-vector-add.py --only_unit_test | |
| # python3 python/tutorials/hints/02/02-fused-softmax.py --only_unit_test | |
| python3 python/tutorials/hints/03/03-matrix-multiplication.py --only_unit_test | |
| python3 python/tutorials/hints/04/04-low-memory-dropout.py --only_unit_test | |
| python3 python/tutorials/hints/05/05-layer-norm.py --only_unit_test | |
| # python3 python/tutorials/hints/06/06-fused-attention.py --only_unit_test # Error on 3.6 | |
| python3 python/tutorials/hints/07/07-extern-functions.py --only_unit_test | |
| python3 python/tutorials/hints/08/08-grouped-gemm.py --only_unit_test | |
| python3 python/tutorials/hints/11/11-programmatic-dependent-launch.py --only_unit_test | |
| ## flagtree tle raw | |
| python3 python/tutorials/tle/raw/mlir/01-vector-add.py | |
| python3 python/tutorials/tle/raw/mlir/02-fused-softmax.py | |
| python3 python/tutorials/tle/raw/mlir/03-matrix-multiplication.py | |
| python3 python/tutorials/tle/raw/mlir/04-hello-world.py | |
| python3 python/tutorials/tle/raw/mlir/05-topk.py --kernel triton | |
| python3 python/tutorials/tle/raw/mlir/05-topk.py --kernel tle | |
| python3 python/tutorials/tle/raw/mlir/06-test-vassert.py | |
| ## flagtree tle cuda | |
| # TODO: These tests are currently skipped because the CLANG environment variable cannot be set. | |
| # python3 python/tutorials/tle/raw/cuda/01-vector-add.py | |
| # python3 python/tutorials/tle/raw/cuda/02-fused-softmax.py | |
| # python3 python/tutorials/tle/raw/cuda/03-matrix-multiplication.py |