recipe(segformer): add nvidia b4 ADE recipe coverage#1123
Conversation
|
Producer-side reviewer sanity check for the SegFormer B4 recipe PR. Verdict: APPROVE-PENDING-CI (comment-only; GitHub does not allow approving my own PR). Evidence checked:
Open items before ready-for-merge:
|
|
Follow-up evidence added after baseline-delta review:
Lane A methodology follow-up was also completed locally (kept out of this Lane B model PR):
The local skill directory is not itself a git repo, so I could not open a separate Lane A skill PR from this machine in this session. |
|
|
@microsoft-github-policy-service agree [company="{your company}"] |
|
@microsoft-github-policy-service agree |
|
Perf evidence has been reorganized into a compact table in the PR body.
So the recipe delta is now stated as footprint/catalog coverage, not a CPU speedup claim. |
|
@microsoft-github-policy-service agree company="Microsoft" |
Add recipe/catalog coverage for
nvidia/segformer-b4-finetuned-ade-512-512image segmentation.This is a recipe/catalog contribution. Current
origin/mainalready auto-builds the model, so the value of this PR is discoverable recipe/catalog/eval coverage plus a checked-inw8a16quantized variant. The measured delta is footprint, not CPU latency:w8a16reduces artifact footprint by 73.6%, while CPU latency is 2.06x slower on this host.Perf And Footprint Summary
temp/baseline_segformer_b4/model.onnxtemp/segformer-b4-w8a16/model.onnxConclusion: the
w8a16recipe is a quantized footprint variant for deployment/catalog coverage. It should not be read as a CPU performance optimization.examples/recipes/nvidia_segformer-b4-finetuned-ade-512-512/image-segmentation_fp16_config.jsonexamples/recipes/nvidia_segformer-b4-finetuned-ade-512-512/image-segmentation_w8a16_config.jsonexamples/recipes/README.mdcontainsnvidia/segformer-b4-finetuned-ade-512-512 | image-segmentation; total updated to 77 on currentorigin/main.temp/baseline_segformer_b4temp/segformer-b4-fp16temp/segformer-b4-w8a16./.venv/Scripts/winml.exe build -m nvidia/segformer-b4-finetuned-ade-512-512 -o temp/baseline_segformer_b4 --ep cpu --device cpu --no-analyze --no-optimize --no-quant --no-compile --rebuildBuild complete in 80.5s; final artifacttemp/baseline_segformer_b4/model.onnx./.venv/Scripts/winml.exe build -c examples/recipes/nvidia_segformer-b4-finetuned-ade-512-512/image-segmentation_fp16_config.json -m nvidia/segformer-b4-finetuned-ade-512-512 -o temp/segformer-b4-fp16 --no-analyze --no-optimize --no-quant --no-compile --rebuildBuild complete in 97.7s; final artifacttemp/segformer-b4-fp16/model.onnx./.venv/Scripts/winml.exe build -c examples/recipes/nvidia_segformer-b4-finetuned-ade-512-512/image-segmentation_w8a16_config.json -m nvidia/segformer-b4-finetuned-ade-512-512 -o temp/segformer-b4-w8a16 --no-analyze --no-optimize --no-compile --rebuildBuild complete in 218.8s; final artifacttemp/segformer-b4-w8a16/model.onnx./.venv/Scripts/winml.exe perf -m temp/baseline_segformer_b4/model.onnx --device cpu --ep cpu --iterations 10 --warmup 2 --format json -o temp/baseline_segformer_b4/perf_cpu.json --overwrite./.venv/Scripts/winml.exe perf -m temp/segformer-b4-w8a16/model.onnx --device cpu --ep cpu --iterations 10 --warmup 2 --format json -o temp/segformer-b4-w8a16/perf_cpu.json --overwriteC:/Users/jinkun/.codex/skills/adding-model-support/model_knowledge/segformer.json, findingsegformer-001.model_knowledgefile is included in the Lane B diff.model_type=segformer:{'vendor': [], 'after_winml': ['feature-extraction', 'image-classification', 'image-segmentation', 'semantic-segmentation'], 'added_by_winml': ['feature-extraction', 'image-classification', 'image-segmentation', 'semantic-segmentation']}.origin/main; contribution adds discoverable recipe variants and w8a16 footprint delta evidence. CPU perf is reported as a tradeoff, not an improvement.cpu].origin/main; recipe fp16 and w8a16 builds passed. Structural validation fortemp/segformer-b4-w8a16/model.onnx: IR 8, opset 17, inputpixel_values [1,3,512,512], outputlogits [1,150,128,128], 926 uint8 initializers. External data stayed next to ONNX artifacts.['DmlExecutionProvider', 'CPUExecutionProvider']. Baseline fp32 CPU mean 707.060 ms; w8a16 CPU mean 1456.313 ms. Artifact footprint changed from 245.3 MB to 64.7 MB (-73.6%); CPU latency is 2.06x slower._meta-055documents thatwinml perf --jsonis invalid and the current CLI uses--format json;_meta-056documents thatwinml analyzecannot run whensrc/winml/modelkit/analyze/rules/runtime_check_rulescontains only README.md and no parquet rule files.agents/tester.md,agents/learner.md,agents/reviewer.md,skill_meta/findings.json, andmodel_knowledge/segformer.json.