# 测试方案 当前所有阶段均未执行硬件测试。门槛是工程验收目标,不是已达到指标。 ## 固定条件 精确记录GPU/CPU/内存通道/SSD/驱动/内核/引擎SHA/量化revision。每次只改一个变量,固定prompt、seed、采样参数、模板、上下文4096、输出512、并发1、MTP关闭。计时分开记录加载、预填充、首字、decode和总耗时。 原版与重新量化版本不能作为只改变卸载参数的性能A/B;它们是不同质量档。相同输入也可能产生不同输出,另测固定生成长度和自然结束的真实任务。 ## 顺序与通过条件 | 阶段 | 工作 | 通过条件 | |---|---|---| | P0 | 收集真实硬件;完成候选源码审计,固定版本 | 有可追溯加载路径和全部算子支持证据 | | P1 | 逐张量预算、加载峰值;先GGUF,后EXL3,再评估原NVFP4路线 | GPU≤14GiB、完整进程树与缓存≤24GiB,无OOM;不偷用宿主额外RAM | | P2 | 128token冒烟;512token固定长度;自然结束任务 | API成功且有有效回答,模板与reasoning字段正确 | | P3 | 同一量化依次GPU预算10/12/14GiB,改变CPU专家层比例;上下文固定 | 记录最优已测分配;运行时不支持的组合标记不支持,不硬凑 | | P4 | 2K提示词+512输出,冷态3次、暖态10次;8K作为后续扩展 | 暖态中位decode≥5tok/s、p95 TTFT≤10秒为交互目标;未达标列为实验可运行 | | P5 | 文字、图像、视频质量及30分钟混合负载 | 0错误/0OOM,所有必需功能通过,资源上限始终满足 | | P6 | 仅对通过方案测试MTP1/2、图优化、长上下文 | 相同任务总耗时改善≥10%,质量不退化且峰值不超限才启用 | 图优化、MTP、8K以上上下文均不是第一轮默认项。候选若只支持文字,标记“文字阶段通过”,整体仍未验收。 ## 质量任务 - 12个确定性算术、10个结构化JSON、5个多轮约束、5个代码单元测试;确定性项全对,代码在隔离且有限时的环境执行。 - 20个中文问答/摘要/代码实际任务,与原NVFP4参考输出盲评;若使用现有服务作参考,另行安排负载窗口,记录版本,不能把模型输出当唯一真值。 - 图片:至少5张含已知字段的票据/图表,核对字段和总计;验证多图不串图。 - 视频:至少3段有明确事件顺序的短片,记录帧采样、时序和正确答案;不只提交一帧。 - 降位量化不以能流畅说话作为质量证据;报告准确率、失败样例、推理预算截断与无最终答案情况。 ## 观测与失效判断 每秒采集GPU显存/利用率/温度、cgroup memory.current/peak/stat/events、swap、worker总占用、磁盘读量/延迟/队列及major faults。报告阶段增量、页缓存和匿名内存,而非只给父进程RSS。 冷态明确区分进程首次启动和物理文件缓存冷态。不得在生产宿主全局清页缓存;优先独立实验机重启后测试,并如实记录SSD和OS缓存条件。限额模拟若共享已有热页缓存,不能用于声称32GB实际冷启动成功。 启动超30分钟或单请求5分钟无输出即停止该臂;出现OOM、swap持续增长或宿主可用内存低于4GiB也停止。短文本连续3次低于1tok/s,先检查I/O与CPU瓶颈,不继续加大上下文。 ## 回退 每个试验记录独立配置,失败后停止本项目进程并恢复上一通过配置;若没有通过配置则保持停止,不循环重启。此次规划不授权停掉现有Spark/6000D生产服务来做限额模拟。后续执行应先选定实际实验机器和窗口。 ## 证据格式 每次保存脱敏JSON:run_id、timestamp、machine、simulation_or_real、engine_sha、model_revision、model_hashes、quantization、placement、resource_limits、prompt_hash、input/output/reasoning_tokens、finish_reason、ttft_s、decode_tps、total_s、gpu_peak_mib、cgroup_peak_bytes、disk_read_bytes、oom_events、quality_pass、limitations。 原始结果放本地results/;只把脱敏且经过复核的汇总提交到audit/results/。没有真实结果时不得创建伪造成功样例。