Research deep-dive / Edge infrastructure
Edge compute sizing for video AI workloads
Edge compute sizing means deriving hardware requirements from the actual frame and inference budget of a workload rather than from camera count or a datasheet TOPS figure. The two numbers that decide it are decode load and achieved utilisation, and both are routinely omitted from vendor sizing guidance.
Sizing an edge appliance for video analytics is usually done with a rule of thumb: so many cameras per device. It is a convenient rule and it is wrong often enough to be dangerous, because camera count is not the workload. Two sites with sixty four cameras each can differ by more than an order of magnitude in the compute they require, depending on what is being asked of the video.
This deep-dive derives the sizing from first principles. It covers the frame budget, the decode term that vendor guidance almost always omits, what quantization actually costs, why a datasheet TOPS figure predicts very little, and how to read a throughput claim. The arithmetic throughout is worked openly so it can be applied to a different estate.
The four stages, and where the time goes
Every analytics pipeline performs four operations on every frame it processes. Sizing exercises tend to consider only the third.
The consequence is that an appliance can sit at 30 percent accelerator utilisation and still drop frames, because the video decode engine is saturated. Diagnosed from accelerator utilisation alone, this looks like idle hardware failing for no reason. Measure the two independently or the bottleneck will be invisible.
The frame budget
The correct starting point is not cameras but frames, and not frames but inferences. The workload is the sum across cameras of frame rate multiplied by the number of models applied to that camera:
Decode budget = Σ ( cameras × sampled fps × pixels per frame )
These two sums have different shapes, and that difference is where sizing errors originate. A camera sampled at 5 fps on a sub stream contributes little to both. A camera running plate recognition at full rate on a main stream contributes moderately to the first and enormously to the second.
Worked example: a 64 camera mixed workload
16 cameras, PPE compliance, sub stream 640x360, 10 fps, 2 models
8 cameras, plate recognition, main stream 1920x1080, 25 fps, 2 models
INFERENCE BUDGET
40 x 5 x 1 = 200 inferences/s
16 x 10 x 2 = 320 inferences/s
8 x 25 x 2 = 400 inferences/s
total = 920 inferences/s
DECODE BUDGET
40 x 5 x 0.23 Mpx = 46 Mpx/s
16 x 10 x 0.23 Mpx = 37 Mpx/s
8 x 25 x 2.07 Mpx = 414 Mpx/s
total = 497 Mpx/s
Look at the distribution. The eight plate cameras are 12.5% of the estate and generate 83% of the decode load. They also generate 43 percent of the inference load. Any sizing rule expressed per camera is meaningless on an estate like this, because the cameras are not comparable units of work. Sizing on a rule of, say, sixteen cameras per appliance would put four such devices on this site and still fail, because the failure would concentrate on whichever device received the plate cameras.
The design response is to distribute by workload rather than by count, or to separate the plate cameras onto their own appliance so their decode demand does not starve the rest.
Why TOPS predicts so little
Accelerator datasheets lead with a TOPS figure, meaning trillions of operations per second. It is a peak arithmetic rate measured under conditions chosen to maximise it. Whether a workload approaches it depends on a property of the workload, not of the chip.
The governing framework is the roofline model, introduced by Williams, Waterman and Patterson. It bounds attainable performance as the lesser of two ceilings: the peak compute rate, and the product of memory bandwidth and arithmetic intensity, which is the number of operations performed per byte moved from memory.
Ridge point = peak compute ÷ memory bandwidth
Below the ridge point a workload is memory-bound and the compute ceiling is irrelevant. On an NVIDIA A100, with roughly 312 TFLOPS against 2 TB/s of bandwidth, the ridge sits near 156 operations per byte. Any workload below that intensity cannot reach the advertised compute rate no matter how the code is written.
There is a second problem with datasheet figures, and it applies to the bandwidth number as well as the compute number. A study characterising neural network inference on mobile system-on-chips found that although the specification claimed a peak memory bandwidth of 14.9 GB/s, measured sustainable bandwidth per component was 3.44 GB/s, 0.49 GB/s and 6.15 GB/s for the two CPU clusters and the GPU respectively.
The gap between the specified figure and the measured figure was more than four to one on the best component and thirty to one on the worst. If both the compute number and the bandwidth number on a datasheet are optimistic by a similar margin, a sizing exercise built on datasheets is not conservative by a small amount, it is wrong by a factor. The only reliable input is a measurement of your models on the actual device.
A practical translation of all this into a sizing rule:
Worked example: from inference budget to a device class
Model cost, detector class = 10 GOP per inference
Actual arithmetic required = 920 x 10 GOP = 9.2 TOPS
If achieved utilisation is 25% of datasheet peak:
Required rating = 9.2 / 0.25 = 36.8 TOPS
If achieved utilisation is 40%:
Required rating = 9.2 / 0.40 = 23.0 TOPS
A device advertised at 40 TOPS therefore has modest headroom on this workload, not the four-fold margin the raw comparison against 9.2 suggests. The utilisation figure is the whole argument, it varies by model and platform, and it is never on the datasheet. Establish it once by measurement for your model family on your candidate device, then reuse it across sites.
What quantization actually costs
Edge deployment almost always involves reducing numerical precision, usually to INT8, to fit memory and accelerate inference. The saving is real and so is the cost, and the cost is frequently understated.
A 2025 empirical study evaluated YOLO models across five scales, from nano to extra-large, in FP32, FP16, dynamic UINT8 and static INT8, benchmarked on COCO under seven degradation conditions. It found that static INT8 TensorRT engines delivered speedups of roughly 1.5 to 3.3 times with a moderate accuracy drop of about 3 to 7 percent mAP50-95 on clean data.
That is the well-behaved outcome, and it is a reasonable planning assumption. Two findings temper it.
The first is that quantization can fail badly rather than gracefully. An NVIDIA TensorRT issue report documents a YOLOv5s model whose COCO mAP fell from 0.362 to 0.054 under INT8 conversion using the default graph, recovering to 0.316 only once a custom plugin handled a specific activation function correctly. The difference between a 13 percent relative accuracy loss and an 85 percent one was an implementation detail in the conversion toolchain, not a property of the model.
The second is that model capacity affects resilience. Work on vulnerable road user detection reports a teacher model suffering catastrophic degradation under INT8 at 23 percent mAP lost, while a knowledge-distilled student retained accuracy far better at 5.6 percent lost, in a model nearly four times smaller. Smaller and better-prepared is not always worse.
The same 2025 study also tested a degradation-aware calibration strategy, exposing the calibration process to a mix of clean and synthetically degraded images. It did not produce consistent improvements in robustness across most models and degradations. Calibration set design is not a reliable substitute for measuring the quantized model on real footage from the deployment.
| Precision | Typical speed effect | Accuracy effect | When to choose it |
|---|---|---|---|
| FP32 | Baseline | Reference | Validation only. Rarely deployed at the edge. |
| FP16 | Moderate gain | Usually negligible loss | The safe default where memory and throughput allow it. |
| Static INT8 | Roughly 1.5 to 3.3 times | Around 3 to 7 percent mAP on clean data, if done correctly | When throughput demands it and the conversion has been validated on your footage. |
The governing rule: any accuracy figure quoted by a vendor must be the figure for the quantized model on the target device, not the full precision model on a server. These are different numbers and the difference is the one that will show up in your alert log. Accuracy loss also compounds with the base rate problem, since a few points of precision lost on a rare-event detector can change alert volume substantially.
Reading a throughput claim
Vendor throughput numbers are frequently incomparable with each other because they measure different things. The MLPerf Inference benchmark, developed by MLCommons, exists partly to impose discipline here, and its structure is a useful lens even when a vendor has not submitted results.
MLPerf defines four scenarios. Single-stream sends one query at a time and reports 90th percentile latency. Multistream sends queries of eight samples and reports 99th percentile latency, which the benchmark authors describe as reflecting industrial automation and remote sensing tasks such as vehicles analysing several cameras at once. Server generates queries on a Poisson distribution under a quality of service constraint. Offline submits everything at once and reports raw throughput with latency unconstrained. Edge submissions use the first, second and fourth.
NVIDIA's own commentary on the benchmark makes the point plainly, cautioning that comparisons must be kept like for like and that one platform's offline result should not be set against another's multi-stream figure.
Applied to procurement, the question to ask is not how many frames per second a device delivers, but: under which scenario, at what percentile, with which model, at what precision, at what input resolution, and with decode included or excluded. A number quoted without those six qualifiers is not a measurement, and an offline throughput figure in particular will overstate what a latency-sensitive deployment can achieve.
MLPerf also imposes an accuracy floor, requiring edge submissions to reach 99 percent of the reference model's accuracy, or 99.9 percent for high-accuracy variants. This is worth borrowing. A throughput claim without an accompanying accuracy constraint can always be met by degrading the model, and frequently is.
Headroom, thermals and failure domain
Three factors turn a correct calculation into a wrong deployment.
Scene complexity is variable
Detection cost varies with what is in the frame. A car park at 03:00 and the same car park at shift change do not cost the same, because postprocessing scales with the number of detections. Sizing against average load produces a system that fails precisely when the site is busiest, which is when it matters.
Thermal behaviour differs from bench behaviour
A sixty second benchmark completes before a device reaches steady-state temperature. Edge appliances in Indian deployments frequently sit in unventilated panels in ambient conditions well above a laboratory. Sustained clocks under those conditions can be materially below burst clocks. Any sizing test that has not run for at least an hour at the target ambient temperature has measured burst performance and called it sustained performance.
Recovery bursts
After a network interruption or a service restart, queued work arrives at once. A system sized with no margin will not catch up, and will instead shed frames for an extended period after every transient fault.
On headroom, a defensible target is to run at no more than 60 to 70 percent of measured sustained capacity. That margin is not conservatism for its own sake. It absorbs scene complexity variation, thermal derating, recovery bursts, and the near certainty that a future model version will cost more than the one it replaces.
One appliance or several
Given a total workload, it can be met with one large device or several smaller ones. Several smaller units generally fail better: one failing degrades coverage rather than eliminating it, cooling is easier, and capacity can be added incrementally as models are added. The cost is more devices to monitor, though fleet monitoring is required in either case.
Where an estate contains a small number of very expensive streams, as in the worked example above, isolating them on their own device is usually worth doing regardless of the total, because it prevents one workload class from starving another.
For the upstream decisions that determine the frame budget in the first place, see our companion piece on RTSP stream optimization. Reducing what the appliance is asked to decode is nearly always cheaper than buying a larger appliance, and the two exercises should be done together rather than in sequence.
Frequently asked questions
Why is TOPS a poor basis for sizing?
Because it states peak arithmetic throughput under ideal conditions, and real workloads rarely approach it. The roofline model shows attainable performance is the lesser of peak compute and arithmetic intensity multiplied by memory bandwidth, so a workload with low data reuse is limited by memory long before it is limited by arithmetic. Size on measured throughput for your model on the actual device.
How much does INT8 quantization cost in accuracy?
A 2025 study of YOLO models across five scales found static INT8 TensorRT engines gave speedups of roughly 1.5 to 3.3 times with a moderate accuracy drop of about 3 to 7 percent mAP50-95 on clean data. That is the well-behaved case. Poorly handled quantization can be catastrophic, and the only safe approach is to measure the quantized model on the target device.
Is decode load really larger than inference load?
Frequently, yes, and it is the most commonly omitted term in sizing. Decode scales with raw pixel throughput, so a handful of full-rate 1080p streams can generate several times the decode work of dozens of sampled sub streams. In a typical mixed estate, the small number of cameras doing plate reading dominates total decode.
What is the roofline model and why does it matter here?
It is a performance model, introduced by Williams, Waterman and Patterson, that bounds attainable throughput as the lesser of peak compute and arithmetic intensity times memory bandwidth. It matters because it explains why doubling a device's TOPS rating often produces no improvement: if the workload is memory-bound, the compute ceiling was never the constraint.
How much headroom should an edge appliance have?
Plan to run at no more than 60 to 70 percent of measured sustained capacity. The margin covers scene complexity variation, model updates that are rarely cheaper than what they replace, thermal throttling in uncooled Indian environments, and the recovery burst after a network interruption when queued work arrives at once.
Does a device rated for sixteen cameras handle sixteen cameras?
Only under the conditions that rating assumed, which are rarely stated. The meaningful question is total frames per second across all streams, at what resolution, running which models, at what precision. A device rated for sixteen streams with one detector may manage six running four models at higher sampling rates.
How do I read a vendor throughput claim?
Ask which MLPerf scenario it corresponds to, or its equivalent. The single-stream scenario reports 90th percentile latency for one query at a time, while offline reports bulk throughput with latency unconstrained. These measure different things and MLPerf's own guidance warns against comparing one platform's offline result to another's multistream result.
What does thermal throttling do to sizing?
It converts a passing benchmark into a failing deployment. Short benchmarks run before the device reaches steady-state temperature. In an uncooled panel in an Indian summer, sustained clocks can sit materially below burst clocks. Any sizing test should run for at least an hour at the target ambient temperature, not for sixty seconds on a bench.
Should I run every model on every camera?
Almost never. The frame budget is the sum across cameras of frame rate multiplied by the number of models applied, so adding a second model to every camera doubles the workload. Applying models only where the corresponding question is being asked is usually the largest single saving available in a sizing exercise.
Is one large appliance better than several small ones?
Several smaller units usually fail better. A single appliance failing takes out the whole site, while one of four failing degrades coverage. Smaller units are also easier to cool and easier to add to incrementally. The trade is more devices to manage, which needs fleet monitoring either way.
Does memory capacity or memory bandwidth matter more?
Capacity determines whether the models fit; bandwidth usually determines how fast they run. Once models fit, additional capacity does nothing while additional bandwidth continues to help, because most detection workloads at small batch sizes have low arithmetic intensity and sit on the memory-bound side of the roofline.
What should a sizing pilot actually measure?
Sustained frames per second across all streams with the real models at target precision, decode utilisation separately from accelerator utilisation, memory bandwidth utilisation if the platform exposes it, steady-state temperature and clock after an hour at target ambient, and accuracy of the quantized model against the full precision model on your own footage.
References
- Williams, S., Waterman, A., and Patterson, D., Roofline: An Insightful Visual Performance Model for Multicore Architectures, Communications of the ACM, 52(4), 2009.
- Reddi, V. J., et al., MLPerf Inference Benchmark, MLCommons, arXiv:1911.02549, 2019.
- MLCommons, MLPerf Inference Rules, scenario definitions and latency constraints.
- Quantization Robustness to Input Degradations for Object Detection, arXiv:2508.19600, 2025. Static INT8 speedup and mAP50-95 findings.
- NVIDIA TensorRT, Quantization Error Analysis on Object Detection, issue 1114. YOLOv5s INT8 mAP collapse and recovery.
- Neural Network Inference on Mobile SoCs, arXiv:1908.11450. Specified versus measured memory bandwidth.
- NVIDIA, MLPerf Inference: NVIDIA Innovations Bring Leading Performance, on like-for-like scenario comparison.
Sizing an appliance for a real estate?
IndoAI builds the frame budget from your camera list and task map, then measures the candidate hardware against your own footage rather than a datasheet. Send us the camera list and what each area needs to detect.
Talk to an adviserReviewed by Dr. Vivek Gujar, Chief Strategy Officer at IndoAI Technologies Pvt. Ltd., a Pune-based edge AI camera platform founded in 2021. He reviews IndoAI's published technical claims for accuracy. Profile
