본문으로 건너뛰기Skip to content 1:1 문의 — [email protected]로 이메일 작성 Contact us — email [email protected]

INT8 accelerator accuracy is decided after multiplication

The same quantized model can return different answers when scaling, rounding and saturation disagree. A practical look at the output path RISC-V and FPGA designers should verify first.

Digilent Arty A7-100T FPGA development board connected by wires to a camera and a Pmod VGA adapter
Digilent Arty A7-100T with camera and Pmod VGA connections in the official ztachip setup. Image: ztachip contributors, Apache License 2.0. Lossless BMP-to-PNG conversion only. This is the base-project setup, not a photograph of the ZTA-Q experiment. Original photo · License

When an INT8 model loses accuracy on an accelerator, inspect the path that converts an accumulated result into the next layer's integer input before widening the multiplier. Identical input widths do not guarantee identical outputs when channel scales, zero-points or rounding order differ.

This article helps RTL designers decide which arithmetic behavior to preserve and deployment engineers decide where to trace an error. The immediate decisions are what to retain when reducing hardware and which reference outputs to compare before retraining a model.

VLSI Korea view: Beyond INT8 support, the decisive question is whether the converter and accelerator execute the same integer arithmetic. Assess area reductions after establishing that agreement.
Model conversion, integer reference execution and hardware execution form separate verification boundaries.
Three boundaries for diagnosis. Original diagram by VLSI Korea; an editorial verification model, not a measured processor pipeline.

What an INT8 label leaves unspecified

The photograph shows the Digilent Arty A7-100T with camera and VGA connections in the official ztachip guide. The open project provides a RISC-V accelerator and its software; deploying a model on such a board makes the agreement between converter and circuit consequential. ztachip project, official board setup

The immediate prompt is the ZTA-Q preprint submitted on 1 October 2026. Its authors extend ztachip on an Arty A7-100T, examining per-channel requantization and rounding; among their approximations, removing shift rounding substantially increases numerical error. ICECS 2026 acceptance is reported in author metadata, not evidence of a new announcement today. ZTA-Q and submission history

Boundary Question Evidence to retain
Float to integer model Did conversion change the task result? Calibration inputs and integer model
Integer model to hardware Did implementation change the arithmetic? Layer outputs and operator parameters
Hardware to application Does the deployed result meet the product need? Accuracy, latency and power conditions

Requantization converts a wide accumulator into the low-width integer expected by the next operation. Even correct multiplication and addition can be followed by a different conversion result, so matching MAC results alone cannot establish accelerator correctness.

These boundaries help select a relevant fix. If the integer reference already misses the quality target, investigate data and conversion; if that reference passes but the board fails, first examine operator mapping and implementation.

Retraining while simultaneously widening hardware obscures which change resolves the problem. Locating the boundary where failure begins makes the next experiment easier to interpret.

An integer code has a unit and a zero-point

An integer code q represents a real value through x = s × (q − z): s is the step between codes, and z is the code for real zero. LiteRT's INT8 specification permits per-channel convolution weight scales and places different constraints on weight and activation zero-points. Google LiteRT specification

Two channels with the same accumulator need different output codes when their effective scales differ.
Illustrative calculation: the same accumulator value, 80, becomes 20 or 10 at effective scales of 0.25 and 0.125. Zero-point is 0; no clipping or rounding ambiguity is present.

Different scales make identical codes represent different magnitudes. A convolution output therefore needs conversion from the input-times-weight unit into the output unit; different weight scales across output channels require different conversion factors.

In the example, an accumulator of 80 becomes 20 with an effective scale of 0.25, or 10 with 0.125. This isolates unit conversion, not measured neural-network performance, and shows why sharing a coefficient or shift across channels needs its own verification.

Reading coefficients from memory does not prove the correct coefficient was used. When a compiler groups channels or changes tile order, it must move each channel's parameters consistently with its weights.

Parameter Meaning A useful failure probe
Scale Real-value step per integer code Adjacent channels with different scales
Zero-point Integer code representing real zero Padded border and zero-valued input
Channel axis Dimension indexed by scale values Channel permutation with matching metadata
Output range Codes the next operator can receive Values just inside and outside the limits

Padding exposes the zero-point issue. Writing integer zero at a boundary that requires real zero changes the input when z is nonzero; gemmlowp's design explanation starts from the requirement that real zero be exactly representable. gemmlowp arithmetic

The useful design artifact is more specific than “INT8 convolution supported.” Fix the input, weight and output scales and zero-points, channel axis, and bias unit in an operator specification so both implementations can be compared against the same model.

Discarded bits change the next layer's input

A circuit can implement requantization with integer multiplication and shifts. Discarded-bit handling and the points at which intermediate results are rounded are part of the computation; gemmlowp represents conversion through an output pipeline after the wide accumulator. gemmlowp output arithmetic

NVIDIA TensorRT explicitly defines INT8 quantization using nearest rounding with ties to even. This does not imply identical details across runtimes: it illustrates a rule to inspect in the reference arithmetic of the model being imported. TensorRT definition

Nearest-even rounding, truncation toward zero and floor produce different integer outputs for the same six inputs.
Calculated examples in output-code units. Nearest-even, truncation toward zero and floor are distinct rules; these values are not inference-accuracy measurements.

For example, nearest-even rounding turns 1.5 into 2, while truncation toward zero produces 1. For −1.5, the respective outputs are −2 and −1, so positive-only tests miss a meaningful part of the behavior.

Arithmetic right shift of a signed integer also differs from truncation toward zero. A negative value with discarded nonzero bits can move toward the floor; mixing sign extension and rounding correction incorrectly can produce a path that works for positive values but fails for negative ones.

Verification boundary: A bit mismatch is a diagnostic signal. It cannot be translated directly into an equally sized drop in final classification accuracy.

A code difference can disappear or grow through later layers depending on the model and input. Use layer-level comparisons to assess arithmetic behavior and an end-to-end task metric to assess the product impact.

Rounding twice is also not generally equivalent to retaining a wide intermediate and rounding once. The specification needs intermediate widths, operation order and saturation points, not just the name of the final rounding mode, for circuit and reference code to test the same operation.

Where to pay for a narrower output

The illustrative tensor occupies 128 KiB at 32 bits per element and 32 KiB at 8 bits per element.
Calculated payload storage for 32,768 elements. One materialization only; no metadata, padding or measured energy is included. A KiB is 1,024 bytes.

Requantization affects more than accuracy. Writing a wide accumulator to memory for CPU conversion and converting it inside the accelerator create different storage and transfer requirements.

Consider an illustrative output tensor containing 32,768 values. Storing each at 32 bits occupies 128 KiB, versus 32 KiB at 8 bits; this counts values only, excluding metadata, alignment padding and repeated reads or writes.

Adding output arithmetic can shorten the distance that wide intermediate values travel. Supplying distinct coefficients and shifts also costs registers, wiring and control, so the storage ratio cannot be read as an energy-saving ratio.

The decision is more conditional than “fewer multipliers is better.” Sharing a converter can reduce arithmetic resources, but if its service rate falls behind output production, queues can fill and computation can stall.

Choice Potential benefit Condition to measure
Convert near the accumulator Move narrower outputs Added datapath area and timing
Share a conversion unit Reuse arithmetic resources Service rate and queue occupancy
Process on the CPU Reuse software arithmetic Transfer cost and end-to-end latency

The preferred choice depends on the workload. A shared converter may serve an operation with infrequent outputs, while post-processing throughput may constrain another with continuous output production.

Compare accuracy, latency and resource use under the same inputs and execution conditions. The storage calculation identifies a path worth measuring; it does not replace FPGA or ASIC area and power results.

Locate the first divergent layer

Begin by preserving the floating-point reference, integer reference and hardware outputs. The first comparison isolates conversion effects, while the second isolates implementation of that integer computation.

ONNX Runtime provides tools to match weights and intermediate activations for comparison. Its documentation recommends separating preprocessing from quantization because graph optimization can disrupt the correspondence needed for debugging. ONNX Runtime quantization debugging

A debug loop compares matching tensors, locates the first divergent operator and tests its arithmetic before rerunning the task.
Original diagnostic sequence by VLSI Korea. Tensor matching follows the approach documented by ONNX Runtime; the hardware checks are editorial recommendations.

When layer outputs differ, inspect where the error occurs as well as its average. A similar proportional error across a channel, an image-border-only discrepancy, or errors concentrated near negative values and saturation suggest different experiments.

These patterns do not prove a cause. They help ask whether correcting coefficient order removes the discrepancy, or whether a shared input reproduces it in the reference operator and RTL.

Probe What it isolates Keep constant
Positive and negative half steps Tie rule and sign handling Scale and operation order
Values around saturation Clamp boundary and overflow Output type and activation
Different neighboring scales Channel-to-coefficient mapping Tensor layout and tile order
Border-only inputs Padding and zero-point treatment Shape, stride and padding mode

After a small operator test agrees, return to the actual model. Operator fusion, tensor reordering and fallback paths for unsupported operations can change behavior beyond the isolated layer.

Retain evaluation-data identifiers, preprocessing, model hashes, and runtime and compiler versions alongside the final metric. Without them, improved accuracy may reflect an input-pipeline change rather than the circuit modification being assessed.

Establish compatibility, then choose approximations

The practical goal is not to compute at the widest possible precision everywhere. It is to reduce storage, transfer and arithmetic cost while meeting the product's quality and latency requirements.

An RTL engineer can first establish a reference-matching path, then isolate each proposed simplification. A deployment engineer can compare layer errors and task metrics on the same data to determine which change exceeds the agreed tolerance.

A release decision binds arithmetic behavior, model quality and deployment measurements to one configuration.
Three evidence groups for one deployment decision. Original framework by VLSI Korea; no universal error tolerance or performance threshold is implied.

If an implementation permits error, define the tolerance before evaluation. Removing inconvenient classes or inputs afterward obscures robustness, and an unchanged average can still conceal severe failures on rare inputs.

The same principle helps discussions with suppliers and IP teams. Alongside bit widths and operator lists, request converter versions, rounding and saturation behavior, layer comparisons and full-model execution conditions to assess integration effort more concretely.

The condition that changes this article's judgment is clear. If simpler output arithmetic repeatedly meets a predeclared quality target on the deployed model and improves measured resources or latency, that approximation is a reasonable choice.

Until then, avoid bundling every accuracy loss into “quantization error.” Explaining the integer passed to the next layer is the prerequisite for choosing a cheaper way to produce it.

Sources and scope

The full HTML of the ZTA-Q preprint was read; no independent reproduction was performed. The photograph shows the official setup of its base project, ztachip, not the ZTA-Q authors' experimental apparatus. Calculation figures are original examples under the stated assumptions.

AI assistance: AI assisted source organization, translation and diagram production. Fact checking against sources and editorial judgments remain subject to separate review.

Disclosure

This article is provided for informational purposes only and does not constitute a recommendation to buy or sell any security. Figures and factual statements are based on publicly available sources, including company filings, news reports, and market research, and may contain errors in the source material or in the preparation of this article. The author may own shares in companies mentioned. All investment decisions and their outcomes are the reader's responsibility.

Discussion

VLSI KOREA BRIEFING

반도체를 읽는 안목, 메일함으로.

엔지니어의 시각과 산업의 흐름을 함께. 무료로 구독하세요.

이미 구독 중인가요? 로그인