Add native deployment of PaddleOCR-VL on NVIDIA DGX Spark (GB10, aarch64, sm_121) - #18310
Open
BreezeHavana wants to merge 3 commits into
Open
Add native deployment of PaddleOCR-VL on NVIDIA DGX Spark (GB10, aarch64, sm_121)#18310BreezeHavana wants to merge 3 commits into
BreezeHavana wants to merge 3 commits into
Conversation
Add deploy/paddleocr_vl_dgx_spark/: README, pipeline config and the full script set for deploying PaddleOCR-VL natively (no Docker) on DGX Spark (aarch64 + Blackwell sm_121 + CUDA 13.0 OS stack), where the official paths all fail: - the official docker images are x86_64-only; - there is no aarch64+CUDA paddlepaddle-gpu wheel (Paddle#76215); - xformers has no aarch64 wheel and is not used at runtime anyway. Contents: - 00_offline_prepare.sh: download Paddle source (pinned SHA + submodules), torch/triton/flash-attn sources and all pip wheels on a host machine - 00_install_build_deps.sh / 01_build_paddle_wheel.sh: build the paddlepaddle-gpu aarch64 wheel from source on the Spark - 07_install_cuda_toolkit.sh: CUDA 12.9 toolkit for the flash-attn build - 02_setup_runtime.sh: venv + full runtime stack (incl. flash-attn source build), with an inline paddlex patch dropping the unused xformers requirement, idempotent with offline-wheel preference - 03_start_services.sh / 04_health_check.sh: start/stop/status of the two-process serving stack (genai_server 127.0.0.1:8081 + paddlex --serve :8080) and three-layer health checks - README also links a ready-to-use offline image of the finished environment (restore and skip straight to serving) The deployment was validated end-to-end on a real DGX Spark. Related upstream change: PaddlePaddle/PaddleX#5194 (drop xformers). Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
NVIDIA DGX Spark(GB10)是 aarch64 + Blackwell sm_121 + CUDA 13.0(DGX OS) 的机器,PaddleOCR-VL 在该平台上的官方部署路径全部失效:
deploy/paddleocr_vl_docker/)paddlepaddle-gpupip wheel本 PR 提供一套原生(非 Docker)离线部署方案:宿主机离线下载 → 传输 Spark → 源码编译 + pip 离线安装,架构与官方 Docker 方案完全等价(两进程),只是用两个原生进程替代两个容器。已在真实 DGX Spark 上完成端到端验证。
新增内容(
deploy/paddleocr_vl_dgx_spark/)00_offline_prepare.sh00_install_build_deps.sh01_build_paddle_wheel.sh07_install_cuda_toolkit.sh02_setup_runtime.sh03_start_services.sh04_health_check.sh说明
02_setup_runtime.sh内含一个对 pip 安装的 paddlex(≤3.7.2)去除 xformers 纸面引用的幂等内联补丁(deps.py双包检查与paddlex_cli.py安装命令),因为官方安装入口会强制装 xformers 而该包在 aarch64 上不可用;上游源码层面的去除见 Remove xformers dependency from genai server plugin (no runtime usage; unblocks aarch64 CUDA deploy) PaddleX#5194,该 PR 合入并发布新版后补丁即可移除;🤖 Generated with Claude Code