Pixal3D PR-4: bake the pixal3d env image in CI #837

Closed
opened 2026-07-25 00:53:57 +00:00 by spikerj · 2 comments
Owner

Part of #833. Blocked by #834.

.gitea/workflows/model-env-images.yml: add pixal3d) MODELS="Pixal3D" ;; to the case block and to the workflow_dispatch input description.

Do not touch prodstages — keeping the modeling default on TripoSG is what keeps that 4-model image (and its long build) untouched.

Dockerfile.model-env needs no change: artpipe setup --model Pixal3D is the single bootstrap entry point, and artpipe-base is already nvidia/cuda:12.9.1-cudnn-devel-ubuntu24.04 with nvcc and build-essential.

Risks to watch on the first build

  • Disk: ~35-45 GB image (weights alone are ~27 GB). The job already runs df -h /.
  • CUDA arch: TORCH_CUDA_ARCH_LIST / NATTEN_CUDA_ARCH must cover sm_89 (4090). Currently set to 8.6;8.9.
  • Toolkit/wheel skew: the manifest starts on cu128 to match the 12.9 base. Upstream pins torch 2.6.0+cu124 — if the compiled extensions mismatch, fall back to cu124 and re-verify.
  • install.verify_imports should catch a silently-failed extension build at image-build time rather than in prod, offline, on the first real job.
Part of #833. Blocked by #834. `.gitea/workflows/model-env-images.yml`: add `pixal3d) MODELS="Pixal3D" ;;` to the case block and to the `workflow_dispatch` input description. **Do not touch `prodstages`** — keeping the modeling default on TripoSG is what keeps that 4-model image (and its long build) untouched. `Dockerfile.model-env` needs no change: `artpipe setup --model Pixal3D` is the single bootstrap entry point, and `artpipe-base` is already `nvidia/cuda:12.9.1-cudnn-devel-ubuntu24.04` with nvcc and build-essential. ## Risks to watch on the first build - **Disk**: ~35-45 GB image (weights alone are ~27 GB). The job already runs `df -h /`. - **CUDA arch**: `TORCH_CUDA_ARCH_LIST` / `NATTEN_CUDA_ARCH` must cover sm_89 (4090). Currently set to `8.6;8.9`. - **Toolkit/wheel skew**: the manifest starts on cu128 to match the 12.9 base. Upstream pins torch 2.6.0+cu124 — if the compiled extensions mismatch, fall back to cu124 and re-verify. - `install.verify_imports` should catch a silently-failed extension build at image-build time rather than in prod, offline, on the first real job.
Author
Owner

Done in spikersoft-artpipe PR #33 (folded in with the manifest rather than shipped separately — the case-block entry is inert without models/Pixal3D/artpipe.json, and building pixal3d alone would exit with "Unknown image").

pixal3d) MODELS="Pixal3D" ;; added to the per-model modeling lane block (#357) and to the workflow_dispatch input description. Deliberately not in DEFAULT_IMAGES — at ~35-45 GB it's the heaviest image in the lane, so it gets built explicitly. prodstages untouched.

Closing once #33 merges.

Done in spikersoft-artpipe PR #33 (folded in with the manifest rather than shipped separately — the case-block entry is inert without `models/Pixal3D/artpipe.json`, and building `pixal3d` alone would exit with "Unknown image"). `pixal3d) MODELS="Pixal3D" ;;` added to the per-model modeling lane block (#357) and to the `workflow_dispatch` input description. Deliberately **not** in `DEFAULT_IMAGES` — at ~35-45 GB it's the heaviest image in the lane, so it gets built explicitly. `prodstages` untouched. Closing once #33 merges.
Author
Owner

Resolved in spikersoft-artpipe PR #33 (merged to main, commit fe0a1ff). pixal3d) MODELS="Pixal3D" ;; added to the per-model modeling lane case block and to the workflow_dispatch input description; deliberately not in DEFAULT_IMAGES. prodstages untouched. Closing.

Resolved in spikersoft-artpipe PR #33 (merged to `main`, commit `fe0a1ff`). `pixal3d) MODELS="Pixal3D" ;;` added to the per-model modeling lane case block and to the `workflow_dispatch` input description; deliberately not in `DEFAULT_IMAGES`. `prodstages` untouched. Closing.
Sign in to join this conversation.