Interpret latency and classification output
Both FP32 tests should identify the image as a Labrador retriever and produce closely matching top-five results. The confidence scores may differ slightly because PyTorch and XNNPACK use different FP32 kernels and may perform operations in a different order. Closely scored lower-ranked labels may also change order. One representative result is:
| Rank | Label | Score |
|---|---|---|
| 1 | Labrador retriever | 63.93% |
| 2 | golden retriever | 34.00% |
| 3 | tennis ball | 0.36% |
| 4 | Rhodesian ridgeback | 0.18% |
| 5 | Brittany spaniel | 0.14% |
Example latency measurements are:
| Runtime path | Warm-ups | Runs | Mean | Median | Min | Max |
|---|---|---|---|---|---|---|
| PyTorch eager | 10 | 50 | 72.55 ms | 72.15 ms | 71.77 ms | 76.96 ms |
| ExecuTorch with XNNPACK | 10 | 50 | 10.89 ms | 10.88 ms | 10.73 ms | 11.63 ms |
Your latency measurements and exact confidence scores will differ slightly. In the reference run, both runtime paths produced the same leading classification, confirming that they are processing the input consistently. Mean latency fell from 72.55 ms to 10.89 ms, a speedup of approximately 6.7 times in this test. This timing result is consistent with the delegation report: XNNPACK received the model’s main convolutional workload as one region, allowing for substantial and efficient optimization.
Course complete
Nice work
You completed Optimize and deploy AI inference with ExecuTorch on Arm.