Skip to content

[megatron] 3/n towards Kimi K2.6: skip MLA THD value pad on sm100+ to keep fused attention trainable #3362

[megatron] 3/n towards Kimi K2.6: skip MLA THD value pad on sm100+ to keep fused attention trainable

[megatron] 3/n towards Kimi K2.6: skip MLA THD value pad on sm100+ to keep fused attention trainable #3362

Workflow file for this run

name: SkyRL-CPU
on:
push:
branches: [ main ]
paths:
- 'ci/**'
- 'skyrl/**'
- 'tests/**'
- 'pyproject.toml'
- '.github/workflows/cpu_skyrl.yaml'
pull_request:
paths:
- 'ci/**'
- 'skyrl/**'
- 'tests/**'
- 'pyproject.toml'
- '.github/workflows/cpu_skyrl.yaml'
workflow_dispatch:
permissions:
checks: write # for status checks to appear
contents: read
# Cancel runs for previous commits on the same branch
concurrency:
group: skyrl-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
skyrl_tests:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
working-directory: .
steps:
- uses: actions/checkout@v4
- name: Install uv
# Use the action rather than the curl installer: on GitHub-hosted runners it
# also restores/saves ~/.cache/uv between runs, which matters here because
# this job resolves several distinct extra sets (tinker/jax/dev).
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
- name: Run lint
run: |
# Pin to match the ruff rev in .pre-commit-config.yaml. Unpinned `uvx ruff`
# picks up ruff's expanded default rule set in newer releases and fails CI.
uvx ruff@0.11.9 check
- name: Run pytest
run: |
uv run --extra tinker --extra jax --extra dev --with transformers==5.2.0 pytest --forked -s tests/tx/models/test_qwen3_5.py
uv run --extra tinker --extra jax --extra dev pytest --forked -s tests --ignore=tests/tx/gpu --ignore=tests/train --ignore=tests/backends/skyrl_train --ignore=tests/tx/models/test_qwen3_5.py
- name: Run engine benchmarks
run: |
uv run --extra tinker --extra dev python skyrl/benchmarks/benchmark_engine.py --base-model trl-internal-testing/tiny-Qwen3ForCausalLM --backend-config '{"max_lora_adapters": 3, "max_lora_rank": 1}' --num-warmup-steps 1 --num-steps 1 --num-requests 1 --seq-len 8 --sample-max-tokens 16