GB10 TP2: kernel tuning MemoryError with MTP (glm-5.3-flash); vm.min_free_kbytes hides ~6.6 GB from the headroom check

Đang mở
#73 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@javieratomic đang làm issue này rồi.

Từ ngày 28/10/2026.

  • #122 của @javieratomic — đang mở

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
bash, dockerfile, python

Hướng nghiên cứu

The build fix starts in packaging/debian/Dockerfile and Dockerfile.dockerignore: add COPY rules for the gemma4, glm53, kimi3, mimo_v2, minimax_m3, nemotron_h, qwen38 and step5 recipe assets, then run scripts/build_deb.sh. For the MemoryError, locate the kernel tuning headroom check that calls cudaMemGetInfo and raises MemoryError; print free/needed and reference vm.min_free_kbytes on GB10. Done: deb builds clean and the error message shows the numbers.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:memory area:preparation bug model:glm-5.3 priority:P2 triage:review

Setup: 2x DGX Spark (GB10, 128 GB unified each), direct CX7 RoCE link, Flare main @d5fd9824 (scripts/build_deb.sh), Orbit + flare-agent TP2. Model nvidia/GLM-5.3-Flash-FP4-Local@76348dd, --max-concurrency 8, --prefill-chunk-size 2048. Stock DGX OS, driver 580.178.04.

Problem: the MTP export fails in kernel tuning with MemoryError on both ranks. Tuning finds 7.2-8.8 GiB free and needs 9,216 MiB (8 GiB headroom + 1 GiB growth), measured after scratch reservation, which takes about 9.5 GiB whatever the concurrency. The same export without MTP passes.

Didn't help: dropping page cache, --compile-workers 4, chunk 2048, lower speculative capacity or image concurrency, c4.

Workaround: our boxes run vm.min_free_kbytes=4194304, a common Spark setting against GPU-driver OOM freezes. On GB10 the kernel watermarks hide about 6.6 GB per box from cudaMemGetInfo. Lowering it to 2 GiB for the export only gave back about 3.7 GB and the MTP export passed. Serving then works with 4 GiB restored: KV 1,993,728 tokens (6.9 GiB per rank), 1M tokens per request, c8.

Asks:

  1. On unified-memory parts, could the tuning headroom be configurable or scale with total memory?
  2. Could the MemoryError print the free and needed numbers, and mention min_free_kbytes on GB10?

Result once running, for reference:

  • tools 5/5
  • our 8-case image test 8/8; the tiny-solid-colour-after-20K case also came back right
  • Hotel Lights (llm-inference-bench) xhigh 8/8
  • decode 41 / 81 / 121 tok/s at C1 / C4 / C8
  • prefill 1,683-2,018 tok/s from 8K to 128K

So GLM + MTP + vision on 2x GB10 TP2 works.

Minor, same build: at d5fd9824, packaging/debian/Dockerfile and Dockerfile.dockerignore don't COPY or allow the recipe assets for gemma4, glm53, kimi3, mimo_v2, minimax_m3, nemotron_h, qwen38 and step5. build_deb.sh failed on a missing kimi3 template until we added them.

Ngôn ngữ chính
Rust
Star
800
Fork
106
Merge trung bình
1 ngày 3 giờ
Pull request đã merge (30 ngày)
100

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của NVIDIA/hyperflare-inference

Tất cả issue của NVIDIA/hyperflare-inference

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.