unsloth/docker
Daniel Han 131f1d3065 docker-publish.yml: native arm64 runner + per-arch digest merge
GitHub announced free linux/arm64 hosted runners for public repos (GA Aug
2025) under labels `ubuntu-24.04-arm` / `ubuntu-22.04-arm`. Switching the
arm64 leg from QEMU-on-amd64 to a native arm64 matrix runner is ~3x
faster and avoids QEMU's occasional flakiness on long cu128 installs.

The workflow now:
  * builds amd64 and arm64 in parallel on their native runners,
    pushing each as a single-arch image *by digest* (no tag)
  * stitches both digests into one multi-platform manifest in a
    follow-up `merge` job, using `docker buildx imagetools create`
  * keeps a separate buildx cache scope per platform to avoid
    cross-arch cache collisions

Smoke-test job now needs `merge` (was `build`) so it only runs once the
final manifest is published.

Dockerfile header: replace the speculative aarch64 SASS list with the
verified one from pytorch/pytorch v2.10.0 .ci/manywheel/build_cuda.sh
(8.0;9.0;10.0;12.0 on aarch64), and note that sm_120 is forward-compatible
to sm_121 per PyTorch maintainers -- which is what makes DGX Spark work
without an explicit sm_121 SASS section in the wheel.

setup_qemu.sh / test_locally.sh --platform stay in place: they're for
the local-dev path on x86_64 boxes that don't have arm64 hardware.
2026-05-24 10:42:28 +00:00
..
.dockerignore Add entrypoint with GPU pre-flight checks + opinionated run.sh wrapper 2026-05-24 07:04:48 +00:00
build.sh Add Docker build for Blackwell that runs on any NVIDIA GPU host 2026-05-24 06:52:58 +00:00
Dockerfile docker-publish.yml: native arm64 runner + per-arch digest merge 2026-05-24 10:42:28 +00:00
entrypoint.sh Expand arch list to every current x86_64 NVIDIA CC per developer.nvidia.com/cuda/gpus 2026-05-24 08:31:15 +00:00
freeze.sh Add Docker build for Blackwell that runs on any NVIDIA GPU host 2026-05-24 06:52:58 +00:00
hf_pull.sh hf_{push,pull}.sh: use new hf CLI, fall back to deprecated huggingface-cli 2026-05-24 09:40:22 +00:00
hf_push.sh hf_{push,pull}.sh: use new hf CLI, fall back to deprecated huggingface-cli 2026-05-24 09:40:22 +00:00
run.sh Add entrypoint with GPU pre-flight checks + opinionated run.sh wrapper 2026-05-24 07:04:48 +00:00
setup_qemu.sh Add linux/arm64 (DGX Spark / Grace) support via QEMU at build time 2026-05-24 10:34:59 +00:00
smoke_test.py smoke_test.py: import unsloth before unsloth_zoo / transformers / trl / peft 2026-05-24 08:11:37 +00:00
test_locally.sh Add linux/arm64 (DGX Spark / Grace) support via QEMU at build time 2026-05-24 10:34:59 +00:00