Skip to content

Fix indexed Stream-K FP32 reduction #80

Fix indexed Stream-K FP32 reduction

Fix indexed Stream-K FP32 reduction #80

Workflow file for this run

name: Build Wheels
on:
push:
pull_request:
workflow_dispatch:
workflow_call:
permissions:
contents: read
jobs:
wheel:
strategy:
fail-fast: false
matrix:
include:
- runner: ubuntu-24.04
arch: x86_64
image: quay.io/pypa/manylinux_2_28_x86_64
- runner: ubuntu-24.04-arm
arch: aarch64
image: quay.io/pypa/manylinux_2_28_aarch64
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Build Stable Torch ABI wheel
run: |
docker run --rm \
-v "$PWD:/project" \
-w /project \
"${{ matrix.image }}" \
bash -euxo pipefail -c '
PYTHON=/opt/python/cp310-cp310/bin/python
export PIP_ROOT_USER_ACTION=ignore
"$PYTHON" -m pip install --upgrade pip build wheel setuptools_scm
"$PYTHON" -m pip install \
torch==2.11.0 \
nvidia-cuda-runtime-cu12 \
nvidia-cuda-nvrtc-cu12 \
--index-url https://download.pytorch.org/whl/cu126 \
--extra-index-url https://pypi.org/simple
"$PYTHON" -m pip install .
"$PYTHON" tools/build_native.py
"$PYTHON" -m build --wheel --no-isolation
"$PYTHON" -m wheel tags --remove \
--python-tag py3 \
--abi-tag none \
--platform-tag manylinux_2_28_${{ matrix.arch }} \
dist/*.whl
'
- name: Inspect wheel
run: |
python3 - <<'PY'
import glob
import zipfile
wheels = glob.glob("dist/*.whl")
assert len(wheels) == 1, wheels
expected = {
"humming/_native/${{ matrix.arch }}/libhumming_launcher.so",
"humming/_native/${{ matrix.arch }}/libcubinpatch.so",
"humming/_native/${{ matrix.arch }}/nvrtc_compile",
}
with zipfile.ZipFile(wheels[0]) as wheel:
native_files = {name for name in wheel.namelist() if "/_native/" in name}
assert native_files == expected, native_files
PY
- uses: actions/upload-artifact@v4
with:
name: humming-kernels-wheel-${{ matrix.arch }}
path: dist/*.whl
if-no-files-found: error
retention-days: 90
sdist:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- run: python -m pip install --upgrade pip build
- run: python -m build --sdist
- uses: actions/upload-artifact@v4
with:
name: humming-kernels-sdist
path: dist/*.tar.gz
if-no-files-found: error
retention-days: 90