- eererdan/memory: MEMO-013 作废更正(7.14非Windows版号)、新增 MEMO-014/015/016 - eererdan/experience: EXPER-029/030 修正(H3本地部署+马赛克根因) - memory/eed + skill(hldp-context-protect等) 同步 - 注: 新家 origin token 失效暂推旧家 old-origin 保底
110 lines
6.4 KiB
Plaintext
110 lines
6.4 KiB
Plaintext
# EED-EXPER-030 · ROCm 7.14 TheRock H3 重测:马赛克未消失(PyTorch 仍是 rocm7.2)
|
||
|
||
> HLDP://cang-ying/eererdan/experience/EED-EXPER-030
|
||
> 耳耳蛋 ICE-GL-耳耳蛋 · PTS-VA-001-EED
|
||
> D158 · 2026-08-07 · 苍耳爸爸共同攻坚
|
||
> 国作登字-2026-A-00037559
|
||
|
||
---
|
||
|
||
HLDP://eererdan/experience/030
|
||
├── trigger: ROCm 7.2.4→7.14 升级完成后,按官方配置重测 MiniMax H3 马赛克
|
||
├── emergence:
|
||
│ ├── 旧: EED-EXPER-029 §7 推断"马赛克=ROCm7.2.4 太旧,升级新版本可解"
|
||
│ ├── 过程: 升 7.14.0-3(TheRock) → 干净装 → 排雷(blacklist/DKMS) → 官方 T2V 配置跑通但输出仍马赛克
|
||
│ └── △=从"升 ROCm 能解"→"ROCm runtime 升了不够,PyTorch wheel 没跟上"
|
||
├── lock:
|
||
│ ├── ⊢ 本经验 = H3 马赛克在 ROCm 7.14 runtime + PyTorch rocm7.2 下的实测结论
|
||
│ └── ⊢ 当前 Linux 下无官方 PyTorch rocm7.14 wheel,mosaic 仍无解
|
||
└── why: 避免下次再花力气只升 ROCm runtime,忽略 PyTorch wheel 版本
|
||
|
||
---
|
||
|
||
## §0 · 一句话结论
|
||
|
||
**ROCm 7.14.0-3(TheRock) runtime 升级完成后,MiniMax H3 int8_convrot FL2VA T2V 仍输出马赛克。根因是 PyTorch 仍为 2.13.0+rocm7.2(hip 7.2.53211),量化 kernel 没换;PyTorch 官方 stable/nightly 均没有 Linux rocm7.14 wheel。只升 ROCm runtime 不够。**
|
||
|
||
---
|
||
|
||
## §1 · 环境与配置
|
||
|
||
**机器**: AMD RX 7900 XTX (gfx1100, RDNA3) 24G / Ryzen 7 7800X3D / 32G RAM / Ubuntu 24.04.4 / Secure Boot enabled
|
||
|
||
**驱动/运行时**:
|
||
- kernel 7.0.0-28-generic(内核自带 Canonical 签名 amdgpu)
|
||
- ROCm 7.14.0-3(包名 amdrocm7.14-gfx1100 / amdrocm-core7.14-gfx1100,Runtime 1.21)
|
||
- DKMS amdgpu 已移除,回退到内核自带签名模块(修复 Secure Boot 冲突)
|
||
- `ROCR_VISIBLE_DEVICES=0` 屏蔽 gfx1036 核显
|
||
|
||
**PyTorch/深度学习栈**:
|
||
- torch 2.13.0+rocm7.2(hip 7.2.53211)
|
||
- `torch.cuda.is_available()` = True,device = Radeon RX 7900 XTX
|
||
- comfy_kitchen backend: cuda available=True, disabled=True(ROCm 上走 PyTorch fallback)
|
||
|
||
**ComfyUI**: v0.30.0,venv python3.12
|
||
- 启动参数(官方动态显存方案):
|
||
`python main.py --listen 127.0.0.1 --port 8188 --disable-pinned-memory --enable-dynamic-vram --fast-disk --vram-headroom 3 --async-offload`
|
||
- 临时禁用 ComfyUI-Manager(后台 cnr_utils fetch 线程 segfault 杀进程)
|
||
|
||
**模型(Comfy-Org/MiniMax-H3 官方布局)**:
|
||
- DiT: `models/diffusion_models/minimax_h3_fl2va_pruned_int8_convrot.safetensors` (20G)
|
||
- TE: `models/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors` (15.7G)
|
||
- VAE: `models/vae/minimax_h3_video_vae_fp16.safetensors` + `minimax_h3_audio_vae_fp32.safetensors`
|
||
|
||
**工作流(官方 T2V,去帧)**:
|
||
- UNETLoader(DiT int8, default) + CLIPLoader(TE nvfp4, type=minimax) + 双 VAELoader
|
||
- MiniMaxH3ImageToVideo(纯文本 T2V,不带 first/last_frame)
|
||
- ResolutionSelector 16:9 @ 0.4MP → 864×480
|
||
- PrimitiveFloat=3s → ComfyMathExpression → length=73 帧(17k+5 合法帧数)
|
||
- KSamplerSelect(res_multistep) + BasicScheduler(simple, steps=20, denoise=1.0) + SamplerCustomAdvanced
|
||
- VAEDecode + VAEDecodeAudio → CreateVideo(fps=24) → SaveVideo
|
||
|
||
---
|
||
|
||
## §2 · 实验过程
|
||
|
||
1. ROCm 7.14 干净安装(amdgpu-install --usecase=rocm),首次 reboot 触发两层雷:
|
||
- `/etc/modprobe.d/blacklist-amdgpu.conf`(7.31 埋下)→ amdgpu 不加载 → rocminfo RC=1
|
||
- DKMS amdgpu(ROCm 安装触发重建)未签名 → Secure Boot 拒绝 → `Key was rejected by service`
|
||
2. 修复:删除 blacklist 配置;`dkms remove` 未签名 DKMS 模块;`depmod -a` 回退到内核自带签名 amdgpu;`update-initramfs -u` 持久化。重启后 rocminfo RC=0,7900XTX 识别正常。
|
||
3. ComfyUI 启动,首次 H3 prompt 误用 26G int8_convrot TE → Qwen3-VL text encoder 前向 `fast_pos_embed_interpolate` 触发 `std::bad_alloc` → segfault。
|
||
4. 修正 TE 为 15.7G nvfp4_awq(官方配置),去掉首/尾帧走纯 T2V,重发 prompt → 执行成功,输出 `MiniMax_H3_reed_714_t2v_00001_.mp4`(864×480, 73帧, 3.04s, h264+aac, 1.84MB)。
|
||
|
||
---
|
||
|
||
## §3 · 关键结果
|
||
|
||
- **执行链完整通过**:model/TE/VAE 加载 → text encode → sampling → VAE decode → video create → save,无 Python exception,无 bad_alloc,无 segfault。
|
||
- **输出仍是马赛克**:ffmpeg 抽 0.5s/1.5s/2.5s 三帧,均为彩色棋盘格噪声,与 EED-EXPER-029 中描述的雪花一致。
|
||
- `torch.version.hip = 7.2.53211`,确认 PyTorch 仍绑定 ROCm 7.2。
|
||
- `pip index` 检查 PyTorch stable 与 nightly 索引,Linux 均无 `+rocm7.14` wheel;nightly 最新为 `2.14.0.dev20260806+rocm7.2`。
|
||
|
||
---
|
||
|
||
## §4 · 根因分析
|
||
|
||
- H3 的 int8_convrot / nvfp4 量化算子实际运行在 PyTorch 的 ROCm kernel 上;comfy_kitchen 的 ROCm 优化后端在环境中被禁用,走的是 PyTorch fallback。
|
||
- 只升级 ROCm runtime(/opt/rocm 7.14)**不改变 PyTorch wheel 里编译好的 kernel**;torch 2.13.0+rocm7.2 仍使用 ROCm 7.2 的量化实现。
|
||
- 因此 ROCm 7.14 runtime 无法修复马赛克;必须让 PyTorch 也使用 ROCm 7.14(或更高)编译的 kernel。
|
||
- 目前 Linux 上无官方 PyTorch ROCm 7.14 wheel,也没有 nightly rocm7.14 wheel。Windows 社区案例提到的 `torch --index-url https://download.pytorch.org/whl/rocm7.14` 在 Linux 无分发。
|
||
|
||
---
|
||
|
||
## §5 · 结论与下一步
|
||
|
||
1. **结论**:ROCm 7.14.0-3 TheRock 在 Linux 上安装成功、运行稳定,但**单靠它不能解决 7900XTX 的 H3 马赛克**。输出仍与 ROCm 7.2.4 时一致。
|
||
2. **要继续 H3 本地验证,必须换 PyTorch wheel**:
|
||
- 选项 A:从源码编译 PyTorch against ROCm 7.14(工作量大,数小时,可能失败,会影响 LTX/Wan/SDXL 等其他模型)。
|
||
- 选项 B:等 PyTorch 官方发布 Linux rocm7.14 wheel。
|
||
- 选项 C:尝试 AMD 私有/预览 wheel(需查 AMD 仓库,可能不稳定)。
|
||
3. **低风险替代方案**:
|
||
- 按 EED-EXPER-029 §5 的 Windows 指引测试(PyTorch rocm7.14 wheel 在 Windows 上似乎可用)。
|
||
- 云端/NVIDIA 环境跑 H3 作对比。
|
||
4. **短期建议**:H3 作为本地 7900XTX 主力生成仍不成熟;继续以 LTX2.3 为高清主力(EED-EXPER-017、EED-MEMO-007/008)。
|
||
|
||
---
|
||
|
||
> ⊢ 耳耳蛋 ICE-GL-耳耳蛋 · PTS-VA-001-EED
|
||
> ⊢ D158 · 2026-08-07 · 国作登字-2026-A-00037559
|
||
> ⊢ 关联: EED-EXPER-029 · EED-MEMO-014 · EED-MEMO-015 · project_h3_local_24g_feasible.md
|