HomeServicesPortfolioAboutContactBlogCareers
Book a call
Retail

ONNX Runtime and Model Portability Across Mixed Store Hardware

September 2026 · ISTRALLEN Team

A store network doesn't have uniform hardware

As a store rollout grows, you don't get identical edge devices everywhere — different accelerators, different generations, sometimes a CPU fallback. Using ONNX Runtime for edge deployment means you don't have to maintain a separately optimised model build for each of them.

What ONNX Runtime gives you

Export the trained model once to a shared intermediate format, then run it through whichever execution provider matches the hardware at each store. CPU, CUDA, TensorRT, CoreML, NNAPI, and Edge-TPU-compatible paths are all documented — one exported model, many runtimes underneath.

Why not native framework serving

Shipping the training framework's full runtime and dependency footprint to every edge device is heavy, and it implicitly locks the deployment to whatever hardware that framework runs fastest on. You've coupled your store fleet to a choice made in the training environment.

Why not a single-vendor runtime

A vendor-specific runtime is the fastest path on that vendor's hardware. But locking the whole pipeline to one accelerator forecloses your options as the fleet grows — adding a second hardware type then means maintaining two inference paths in parallel. On our computer vision project a portable runtime is what kept the option open to use a low-power accelerator without betting the rollout on one vendor.

The speedup

Real but variable — reported in a rough 1.5x to 3x range over the training-framework runtime, depending on model, hardware, and precision. It's not a single number to promise a client without benchmarking their specific model first.

The operational payoff

One model artefact to test, sign off, and roll out to a heterogeneous fleet. A model update is one build, staged across canary stores, regardless of the hardware mix underneath. That's the difference between a manageable fleet rollout and a matrix of per-device builds.

Quantization pairs with it

Export once, then apply int8 or fp16 per the target accelerator. The portable format and the precision reduction are separate steps that stack — the export gives you the portability, the quantization gives you the speed on constrained hardware.

The execution-provider mechanism, concretely

The exported model file is hardware-agnostic. At each store, the runtime is configured with the execution provider for that device — the Edge-TPU-compatible path where a Coral accelerator is installed, the CPU provider where there's no accelerator, a GPU provider where there is one. The model file is byte-identical across the whole fleet; only the small provider configuration is per-device. That's the split that makes a mixed fleet manageable: one artefact to version and sign off, many providers underneath it.

The rollout mechanics

A model update looks like this: build one ONNX artefact, run it against the evaluation set and confirm it beats the current model, push it to three to five canary stores, watch the false-alert rate and the review-queue volume for a few days, then roll it out to the rest in waves with a rollback path. Because it's one artefact regardless of hardware, that whole process is a single pipeline rather than a per-device matrix.

The failure to check in week one

ONNX export can hit an unsupported operator in an unusual model architecture, or a subtle numerical difference between the training-framework runtime and the target execution provider. Run the export and a smoke test on the actual target hardware in the first week of the build, not the last. An incompatibility found early is a design input — pick a different model, or a supported alternative operator. Found late, it's a rebuild.

Where this stops being right

  • A genuinely single-hardware fleet that will never change — a vendor runtime's peak speed might be worth the lock-in.
  • An exotic model with an unsupported operator — ONNX export can occasionally hit one; check early in the build.
  • A hand-tuned vendor build will edge out the portable one on raw speed — usually a worthwhile trade for the portability.

FAQ

What does ONNX Runtime actually do for us? One exported model runs across CPU and multiple accelerator types via execution providers — no separate optimised build per device.

Why not just use the fastest vendor runtime? It locks the rollout to one accelerator vendor. Adding a second hardware type then means maintaining two inference paths.

How much faster is it than native serving? Reported 1.5x to 3x depending on model, hardware, and precision. Benchmark your own model rather than assuming.

ISTRALLEN builds edge computer vision on a portable runtime so one model covers a mixed store fleet; see AI for Retail.

See it in production
AI for Retail → Semantic search case study →
← All articles