NOTE: The Jupyter Notebook below is included in the Chimera SDK and can be run interactively by running the following CLI command:
$ quadric sdk notebook
From the Jupyter Notebook window in your browser, select the notebook named /quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_chipy.ipynb.
YOLOX End-to-End on Chimera GPNPU
This notebook runs the entire YOLOX detection pipeline on the Chimera GPNPU — backbone inference, box decoding, and NMS — in a single compiled program.
Why end-to-end?
Most detection demos split the pipeline: the backbone runs on the accelerator while postprocessing (decode + NMS) runs on the host CPU. This creates a round-trip penalty and leaves the CPU as a bottleneck.
Here we use Chipy to compose the CGC-compiled backbone with a CCL custom op that handles decode + NMS entirely on-chip. The result is a single GPNPU program with zero host intervention between backbone and output.
Pipeline
Model: YOLOX-M (COCO 80-class, 640x640, 25.3M params, 73.8 GFLOPs)
1. Setup
import numpy as np
from tvm.contrib.epu import chipy
from yolox_e2e_helpers import (
COCO_CLASSES,
MAX_DETECTIONS,
compare_detections,
cpu_decode_and_nms,
download_model,
load_input,
print_detections,
)
%matplotlib inline
2. Download Model
We use a pre-quantized YOLOX-M backbone cut at the 3 FPN heads (asymmetric int8). To learn how to export and quantize YOLOX from scratch, see the yolox.ipynb notebook in the yolox/ directory.
model_path, tranges_path = download_model()
Downloading yolox-m-noconcat_OpSet16_optimized_asym_int8_q_shaped.onnx ...
Model: yolox-m-noconcat_OpSet16_optimized_asym_int8_q_shaped.onnx (25.7 MB)
Downloading yolox-m-noconcat_OpSet16_optimized_asym_int8_q_shaped.tranges ...
Tranges: yolox-m-noconcat_OpSet16_optimized_asym_int8_q_shaped.tranges
3. The CCL Postprocessing Kernel
The decode + NMS pipeline is implemented as a single CCL kernel in yolox_postprocess.hpp.
| Stage | What happens |
|---|---|
| Split DMA | Load box+obj [1,5,H,W] and classes [1,80,H,W] separately via channel-offset memCpy |
| Flow argmax | reduce<Direction::Channel> over 80 class channels → best class index via ReadFlow/WriteFlow |
| Decode | 7 RAU loads/proposal: 5 box+obj (batched via rau::load::tiles) + 1 argmax + 1 class value |
| FastDiv | floor(n/d) = (n * ceil(2^22/d)) >> 22 for grid coordinate computation |
| NMS | nn::nms — class-aware, all in OCM |
All 8,400 decoded proposals fit in OCM (~100 KB for boxes + scores + classes in FP16). Each FPN head is split-loaded, reduced, decoded, then freed before the next.
## Show key patterns from the CCL kernel
from pathlib import Path
hpp = Path("yolox_postprocess.hpp").read_text()
## Show the ArgmaxLambda functor
print("// === Flow-based argmax over 80 class channels ===")
f_start = hpp.find("template <typename ElemT, std::int32_t numClasses>")
f_end = hpp.find("};", f_start) + 2
print(hpp[f_start:f_end].strip())
print("\n// === Per-scale processing: DMA → argmax → decode ===")
s_start = hpp.find("// Split DMA: channels 0-4")
s_end = hpp.find("ocmMem.free(ocmBoxObj);", s_start)
s_end = hpp.find("\n", s_end) + 1
print(hpp[s_start:s_end].strip())
print("\n// ... [decode reads 7 values/proposal via RAU, then NMS + DMA out]")
// === Flow-based argmax over 80 class channels ===
template <typename ElemT, std::int32_t numClasses>
struct ArgmaxLambda {
INLINE void operator()(
container::NDArray<qVar_t<ElemT>, numClasses>& cls,
qVar_t<std::int16_t>& result)
{
qVar_t<ElemT> maxVal = cls[0];
qVar_t<std::int16_t> maxIdx = 0;
for (std::int32_t i = 1; i < numClasses; i++) {
auto better = cls[i] > maxVal;
maxVal = better ? cls[i] : maxVal;
maxIdx = better ? static_cast<qVar_t<std::int16_t>>(i) : maxIdx;
}
result = maxIdx;
}
};
// === Per-scale processing: DMA → argmax → decode ===
// Split DMA: channels 0-4 (box+obj) and channels 5-84 (classes)
memCpy(ddrHead, ocmBoxObj);
memCpy(ddrHead, ocmCls, 0, 5, 0, 0);
// Flow-based argmax: 80 class channels → 1 class index per position
ArgmaxLambda<HeadElemT, YOLOX_NUM_CLASSES> argmaxLambda;
reduce<Direction::Channel>(ocmCls, ocmArgmax, argmaxLambda);
yoloxDecodeScale<gridH, gridW, stride, propOffset>(
ocmBoxObj, ocmCls, ocmArgmax, ocmBoxes, ocmScores, ocmClasses);
ocmMem.free(ocmArgmax);
ocmMem.free(ocmCls);
ocmMem.free(ocmBoxObj);
// ... [decode reads 7 values/proposal via RAU, then NMS + DMA out]
4. Chipy End-to-End Pipeline
Chipy lets us compose the CGC-compiled backbone with our CCL custom op. The @chipy.ccl_custom_op decorator bridges the C++ kernel, and @chipy.func wires the full pipeline in 5 lines.
@chipy.ccl_custom_op(
ccl_func_name="yoloxPostprocess",
frac_bits=[4, 15, 0], # boxes Q11.4 (BoxFP), scores Q0.15 (ScoreFP16), classes int
reserved_l2m=4_000_000, # 4 MB OCM for heads + decoded buffers + NMS
reserved_ext=0,
io_in_ext_mem=True, # inputs/outputs live in DDR
)
def yolox_postprocess(head0, head1, head2, iou_threshold, score_threshold):
"""CPU reference — Chipy calls this in CPU mode, the HPP on GPNPU."""
return cpu_decode_and_nms([head0, head1, head2], iou_threshold, score_threshold)
@chipy.func()
def yolox_e2e(model_path, inp, iou_threshold, score_threshold):
"""YOLOX end-to-end: backbone (ONNX) → decode + NMS (CCL)."""
heads = chipy.infer_onnx(model_path, inp)
return yolox_postprocess(heads[0], heads[1], heads[2], iou_threshold, score_threshold)
print("Pipeline defined: backbone → decode → NMS")
Pipeline defined: backbone → decode → NMS
5. Compile & Run
We run the pipeline twice:
- CPU — ORT backbone + numpy postprocess (float reference)
- GPNPU ISS — Fully compiled (CGC backbone + CCL postprocess), with region profiling
We set the TVM logger to INFO to suppress verbose debug output during compilation.
## Load input and run CPU reference
chipy_inp, img, tranges = load_input(
"../../../common/calibration/coco-like/33887522274_eebd074106_k.jpeg",
tranges_path,
)
## Normalize value_proto_ranges to the nested [[min, max]] shape that
## CompiledChiPyModule.run expects (workaround for tvm#3261).
tranges = {k: ([v] if v and not isinstance(v[0], list) else v) for k, v in tranges.items()}
IOU_THR, SCORE_THR = 0.45, 0.3
out_cpu = yolox_e2e(str(model_path), chipy_inp, IOU_THR, SCORE_THR)
cpu_boxes, cpu_scores, cpu_classes = (
out_cpu[0].numpy(),
out_cpu[1].numpy(),
out_cpu[2].numpy(),
)
n_cpu = int(np.count_nonzero(cpu_scores > 0))
print_detections("CPU", cpu_boxes, cpu_scores, cpu_classes, n_cpu)
CPU: 5 detections
car score=0.944 box=[138, 389, 232, 498]
bus score=0.923 box=[292, 275, 399, 462]
person score=0.805 box=[538, 386, 560, 469]
person score=0.746 box=[502, 384, 522, 468]
person score=0.673 box=[518, 369, 541, 470]
import logging
from pathlib import Path
from tvm.contrib.epu.chimera_job.hw_config import HWConfig
from tvm.relay.backend.contrib.epu import util as epu_util
from tvm.relay.backend.contrib.epu.util import logger as tvm_logger
tvm_logger.setLevel(logging.INFO)
module_name = "yolox_e2e"
hw_config = HWConfig(product="QC-N", ocm_size="8MB", macs_per_pe=16)
## Pass-context attrs (output_profile / enable_region_profile) are inherited
## from the outer `with` block into compile_and_run's internal target+pass_ctx.
with epu_util.add_epu_passcontext_attributes(
output_profile=True,
enable_region_profile=True,
):
out_gpnpu = yolox_e2e.compile_and_run(
hw_config=hw_config,
module_name=module_name,
custom_op_header=str(Path(".").resolve() / "yolox_postprocess.hpp"),
value_proto_ranges=tranges,
model_path=str(model_path),
inp=chipy_inp,
iou_threshold=IOU_THR,
score_threshold=SCORE_THR,
)
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:173: RuntimeWarning: overflow encountered in multiply
decoded[:, 0:2] = (decoded[:, 0:2] + grids) * exp_strides
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:184: RuntimeWarning: overflow encountered in multiply
combined = decoded[:, 4, None] * decoded[:, 5:] # obj * cls
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:184: RuntimeWarning: invalid value encountered in multiply
combined = decoded[:, 4, None] * decoded[:, 5:] # obj * cls
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:139: RuntimeWarning: invalid value encountered in subtract
a_j = (boxes[order[1:], 2] - boxes[order[1:], 0]) * (
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:140: RuntimeWarning: invalid value encountered in subtract
boxes[order[1:], 3] - boxes[order[1:], 1]
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:137: RuntimeWarning: invalid value encountered in subtract
inter = np.maximum(0, xx2 - xx1) * np.maximum(0, yy2 - yy1)
/quadric/sdk-cli/examples/models/yolo/yolox_e2e/yolox_e2e_helpers.py:138: RuntimeWarning: invalid value encountered in scalar subtract
a_i = (boxes[idx, 2] - boxes[idx, 0]) * (boxes[idx, 3] - boxes[idx, 1])
2026-06-19 04:06 - INFO - epu - codegen - START==================================build_relay
2026-06-19 04:06 - INFO - epu - codegen - START===============================optimize_relay
2026-06-19 04:06 - INFO - epu - codegen - START====================quantize_to_cpu_runnable_fx
2026-06-19 04:06 - INFO - epu - fx -
Source name Op Output 0 Range Output 0 Frac Bits Output 1 Range Output 1 Frac Bits Output 2 Range Output 2 Frac Bits
-------------------------------------------------------------------------------- ----------------------------- ----------------------------------------- -------------------- ---------------- -------------------- ---------------- --------------------
577 strided_slice (0.0, 255.0) 23 N/A N/A N/A N/A
579 strided_slice (0.0, 255.0) 23 N/A N/A N/A N/A
578 strided_slice (0.0, 255.0) 23 N/A N/A N/A N/A
580 strided_slice (0.0, 255.0) 23 N/A N/A N/A N/A
/backbone/backbone/stem/conv/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-39.98909890651703, 41.58866286277771) 25 N/A N/A N/A N/A
/backbone/backbone/stem/conv/act/Sigmoid sigmoid [0f, 1f] 31 N/A N/A N/A N/A
/backbone/backbone/stem/conv/act/Mul multiply [-0.278464f, 41.5887f] 25 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-68.17592144012451, 59.65393126010895) 24 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.0/act/Sigmoid sigmoid [0f, 1f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.0/act/Mul multiply [-0.273477f, 59.6539f] 24 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-26.98635244369507, 5.939579963684082) 26 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv1/act/Sigmoid sigmoid [0f, 0.997374f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv1/act/Mul multiply [-0.278447f, 5.92398f] 26 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-32.84993886947632, 13.4303617477417) 25 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv1/act/Sigmoid sigmoid [0f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv1/act/Mul multiply [-0.278457f, 13.4303f] 25 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.90206441283226, 8.604870893061161) 27 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv2/act/Sigmoid sigmoid [6.79493e-06f, 0.999817f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.0/conv2/act/Mul multiply [-0.278457f, 8.60329f] 27 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-13.258488692343235, 9.74093046784401) 27 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv1/act/Sigmoid sigmoid [1.72853e-06f, 0.999908f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv1/act/Mul multiply [-0.278437f, 9.2891f] 27 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-16.495330289006233, 10.818365968763828) 26 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv2/act/Sigmoid sigmoid [1.19209e-07f, 0.999978f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/m/m.1/conv2/act/Mul multiply [-0.278459f, 10.711f] 26 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-43.944413900375366, 19.725049421191216) 25 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv2/act/Sigmoid sigmoid [0f, 1f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv2/act/Mul multiply [-0.278365f, 19.2257f] 25 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-19.486327148973942, 11.765329599380493) 26 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv3/act/Sigmoid sigmoid [0f, 0.999992f] 31 N/A N/A N/A N/A
/backbone/backbone/dark2/dark2.1/conv3/act/Mul multiply [-0.278152f, 11.7652f] 26 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.42130821943283, 9.53145146369934) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.0/act/Sigmoid sigmoid [1.09375e-05f, 0.999915f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.0/act/Mul multiply [-0.278324f, 9.36631f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-6.965011101216078, 5.455113589763641) 28 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv1/act/Sigmoid sigmoid [0.000943452f, 0.995744f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv1/act/Mul multiply [-0.278448f, 5.4319f] 28 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.963160663843155, 8.618423715233803) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv1/act/Sigmoid sigmoid [0.00013718f, 0.999819f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv1/act/Mul multiply [-0.278358f, 8.61687f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-6.489009331911802, 4.616342209279537) 28 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv2/act/Sigmoid sigmoid [0.00197008f, 0.987855f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.0/conv2/act/Mul multiply [-0.278438f, 4.34517f] 28 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.134142823517323, 10.539508536458015) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv1/act/Sigmoid sigmoid [7.59363e-05f, 0.999953f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv1/act/Mul multiply [-0.278427f, 9.97153f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.609004333615303, 5.4634065963327885) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv2/act/Sigmoid sigmoid [0.000334769f, 0.995023f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.1/conv2/act/Mul multiply [-0.278455f, 5.27148f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.550541713833809, 11.50182006508112) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv1/act/Sigmoid sigmoid [2.6226e-05f, 0.999984f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv1/act/Mul multiply [-0.278427f, 11.0692f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-14.240695483982563, 6.275560721755028) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv2/act/Sigmoid sigmoid [6.85453e-07f, 0.998122f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.2/conv2/act/Mul multiply [-0.278456f, 6.26377f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.333498150110245, 8.803937561810017) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv1/act/Sigmoid sigmoid [0.000314385f, 0.999743f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv1/act/Mul multiply [-0.278464f, 8.26417f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.701678812503815, 7.734825611114502) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv2/act/Sigmoid sigmoid [0.000177354f, 0.999534f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.3/conv2/act/Mul multiply [-0.278452f, 7.66679f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.106665313243866, 7.599807024002075) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv1/act/Sigmoid sigmoid [0.000110835f, 0.9995f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv1/act/Mul multiply [-0.278356f, 7.596f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.691843532025814, 8.790678322315216) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv2/act/Sigmoid sigmoid [0.000456303f, 0.999815f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.4/conv2/act/Mul multiply [-0.278442f, 8.59518f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-12.431745804846287, 11.403556302189827) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv1/act/Sigmoid sigmoid [4.79817e-06f, 0.999989f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv1/act/Mul multiply [-0.278367f, 11.4034f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.915692918002605, 10.332411617040634) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv2/act/Sigmoid sigmoid [2.14279e-05f, 0.999967f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/m/m.5/conv2/act/Mul multiply [-0.278374f, 10.3321f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-14.235472828149796, 10.799324214458466) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv2/act/Sigmoid sigmoid [1.57952e-06f, 0.99998f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv2/act/Mul multiply [-0.278464f, 10.7991f] 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.590201295912266, 9.367173358798027) 27 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv3/act/Sigmoid sigmoid [6.83665e-05f, 0.999901f] 31 N/A N/A N/A N/A
/backbone/backbone/dark3/dark3.1/conv3/act/Mul multiply [-0.278441f, 9.21757f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.128445476293564, 9.290754497051239) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.0/act/Sigmoid sigmoid [4.64618e-05f, 0.999884f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.0/act/Mul multiply [-0.278436f, 9.06124f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-4.8405566811561584, 7.028115950524807) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv1/act/Sigmoid sigmoid [0.0113378f, 0.998933f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv1/act/Mul multiply [-0.278412f, 6.83464f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.064373910427094, 15.599779561161995) 26 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv1/act/Sigmoid sigmoid [4.70281e-05f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv1/act/Mul multiply [-0.278368f, 14.392f] 26 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.709447331726551, 5.848546251654625) 28 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv2/act/Sigmoid sigmoid [0.000448346f, 0.993965f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.0/conv2/act/Mul multiply [-0.278464f, 5.07338f] 28 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.600667506456375, 12.30755464732647) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv1/act/Sigmoid sigmoid [3.26037e-05f, 0.999994f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv1/act/Mul multiply [-0.278417f, 12.038f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-6.501699112355709, 5.600003615021706) 28 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv2/act/Sigmoid sigmoid [0.00189921f, 0.994871f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.1/conv2/act/Mul multiply [-0.278464f, 5.24078f] 28 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.095915257930756, 10.2329046651721) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv1/act/Sigmoid sigmoid [0.000112087f, 0.999964f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv1/act/Mul multiply [-0.278453f, 10.2325f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.048473134636879, 10.069247335195541) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv2/act/Sigmoid sigmoid [0.000867963f, 0.999937f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.2/conv2/act/Mul multiply [-0.278464f, 9.66586f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.716339185833931, 13.29025974869728) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv1/act/Sigmoid sigmoid [0.000163913f, 0.999998f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv1/act/Mul multiply [-0.278437f, 12.945f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.227986000478268, 11.234069913625717) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv2/act/Sigmoid sigmoid [0.000115305f, 0.999743f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.3/conv2/act/Mul multiply [-0.278461f, 8.26294f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.034433811903, 10.282086052000523) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv1/act/Sigmoid sigmoid [1.90735e-05f, 0.99996f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv1/act/Mul multiply [-0.278398f, 10.1145f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.428447216749191, 9.960698269307613) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv2/act/Sigmoid sigmoid [8.03769e-05f, 0.999953f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.4/conv2/act/Mul multiply [-0.278443f, 9.96023f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-13.788926973938942, 9.65224888175726) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv1/act/Sigmoid sigmoid [1.46031e-06f, 0.999936f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv1/act/Mul multiply [-0.278457f, 9.65163f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.151792541146278, 13.169893026351929) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv2/act/Sigmoid sigmoid [3.9041e-05f, 0.999998f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/m/m.5/conv2/act/Mul multiply [-0.278464f, 13.1699f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.866346627473831, 13.777029559016228) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv2/act/Sigmoid sigmoid [1.42157e-05f, 0.999998f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv2/act/Mul multiply [-0.278375f, 13.1736f] 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.730125367641449, 10.94639103859663) 27 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv3/act/Sigmoid sigmoid [7.58171e-05f, 0.999974f] 31 N/A N/A N/A N/A
/backbone/backbone/dark4/dark4.1/conv3/act/Mul multiply [-0.278426f, 10.5407f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-12.868630662560463, 11.438782811164856) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.0/act/Sigmoid sigmoid [2.6226e-06f, 0.999955f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.0/act/Mul multiply [-0.278294f, 10.0085f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-5.371986150741577, 7.311870038509369) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv1/act/Sigmoid sigmoid [0.00878963f, 0.999145f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv1/act/Mul multiply [-0.278441f, 7.05713f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-12.02511191368103, 8.417578339576721) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv2/act/Sigmoid sigmoid [5.99027e-06f, 0.999779f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.1/conv2/act/Mul multiply [-0.278463f, 8.41572f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.3702715411782265, 8.162118896842003) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv1/act/Sigmoid sigmoid [0.000629276f, 0.999715f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv1/act/Mul multiply [-0.278465f, 8.15979f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.968665324151516, 11.022079139947891) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv1/act/Sigmoid sigmoid [0.000627667f, 0.999984f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv1/act/Mul multiply [-0.278448f, 11.0219f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.393514305353165, 7.839191794395447) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv2/act/Sigmoid sigmoid [8.32677e-05f, 0.999606f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.0/conv2/act/Mul multiply [-0.278461f, 7.8361f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.2235342040658, 8.80567179620266) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv1/act/Sigmoid sigmoid [3.62992e-05f, 0.999227f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv1/act/Mul multiply [-0.278454f, 7.1584f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.109186321496964, 10.190304934978485) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv2/act/Sigmoid sigmoid [0.00066185f, 0.999466f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/m/m.1/conv2/act/Mul multiply [-0.278445f, 7.53106f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.409237563610077, 9.460392259061337) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv2/act/Sigmoid sigmoid [0.000316232f, 0.999922f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv2/act/Mul multiply [-0.278432f, 9.45966f] 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.665168911218643, 10.106560587882996) 27 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv3/act/Sigmoid sigmoid [0.000416964f, 0.999908f] 31 N/A N/A N/A N/A
/backbone/backbone/dark5/dark5.2/conv3/act/Mul multiply [-0.27833f, 9.29718f] 27 N/A N/A N/A N/A
/backbone/lateral_conv0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.9773750603199, 14.024800792336464) 27 N/A N/A N/A N/A
/backbone/lateral_conv0/act/Sigmoid sigmoid [0.00103614f, 0.999289f] 31 N/A N/A N/A N/A
/backbone/lateral_conv0/act/Mul multiply [-0.278299f, 7.24256f] 27 N/A N/A N/A N/A
/backbone/C3_p4/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.00681783258915, 8.1974563524127) 27 N/A N/A N/A N/A
/backbone/C3_p4/conv1/act/Sigmoid sigmoid [0.000378221f, 0.999667f] 31 N/A N/A N/A N/A
/backbone/C3_p4/conv1/act/Mul multiply [-0.278458f, 8.00415f] 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.052022099494934, 11.55749250203371) 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv1/act/Sigmoid sigmoid [0.000117123f, 0.999987f] 31 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv1/act/Mul multiply [-0.278441f, 11.2341f] 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.948206543922424, 9.453347235918045) 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv2/act/Sigmoid sigmoid [0.000129908f, 0.999668f] 31 N/A N/A N/A N/A
/backbone/C3_p4/m/m.0/conv2/act/Mul multiply [-0.278419f, 8.00743f] 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.563209787011147, 10.814714781939983) 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv1/act/Sigmoid sigmoid [5.49555e-05f, 0.999964f] 31 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv1/act/Mul multiply [-0.278416f, 10.2275f] 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.418915793299675, 8.755672425031662) 27 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv2/act/Sigmoid sigmoid [0.000378042f, 0.999842f] 31 N/A N/A N/A N/A
/backbone/C3_p4/m/m.1/conv2/act/Mul multiply [-0.278464f, 8.75429f] 27 N/A N/A N/A N/A
/backbone/C3_p4/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.417450770735741, 9.029940068721771) 27 N/A N/A N/A N/A
/backbone/C3_p4/conv2/act/Sigmoid sigmoid [0.000600308f, 0.998613f] 31 N/A N/A N/A N/A
/backbone/C3_p4/conv2/act/Mul multiply [-0.27845f, 6.56983f] 27 N/A N/A N/A N/A
/backbone/C3_p4/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.160041451454163, 12.972195781767368) 27 N/A N/A N/A N/A
/backbone/C3_p4/conv3/act/Sigmoid sigmoid [4.23491e-05f, 0.999885f] 31 N/A N/A N/A N/A
/backbone/C3_p4/conv3/act/Mul multiply [-0.278457f, 9.07042f] 27 N/A N/A N/A N/A
/backbone/reduce_conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.41692877560854, 14.346937045454979) 27 N/A N/A N/A N/A
/backbone/reduce_conv1/act/Sigmoid sigmoid [0.00232407f, 0.998731f] 31 N/A N/A N/A N/A
/backbone/reduce_conv1/act/Mul multiply [-0.278333f, 6.65983f] 27 N/A N/A N/A N/A
/backbone/C3_p3/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-6.790115289390087, 7.402338799089193) 27 N/A N/A N/A N/A
/backbone/C3_p3/conv1/act/Sigmoid sigmoid [0.00112358f, 0.996188f] 31 N/A N/A N/A N/A
/backbone/C3_p3/conv1/act/Mul multiply [-0.278464f, 5.54445f] 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.855288937687874, 9.802163891494274) 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv1/act/Sigmoid sigmoid [1.93119e-05f, 0.998341f] 31 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv1/act/Mul multiply [-0.278431f, 6.38914f] 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.539102524518967, 8.613667204976082) 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv2/act/Sigmoid sigmoid [0.000224829f, 0.999679f] 31 N/A N/A N/A N/A
/backbone/C3_p3/m/m.0/conv2/act/Mul multiply [-0.278464f, 8.04159f] 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.450322911143303, 8.40028703212738) 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv1/act/Sigmoid sigmoid [0.000137717f, 0.99948f] 31 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv1/act/Mul multiply [-0.278427f, 7.55632f] 27 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.256693840026855, 15.33139917254448) 26 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv2/act/Sigmoid sigmoid [9.54568e-05f, 0.99997f] 31 N/A N/A N/A N/A
/backbone/C3_p3/m/m.1/conv2/act/Mul multiply [-0.278396f, 10.4135f] 26 N/A N/A N/A N/A
/backbone/C3_p3/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.238990195095539, 7.740761458873749) 27 N/A N/A N/A N/A
/backbone/C3_p3/conv2/act/Sigmoid sigmoid [4.32432e-05f, 0.998572f] 31 N/A N/A N/A N/A
/backbone/C3_p3/conv2/act/Mul multiply [-0.278446f, 6.54052f] 27 N/A N/A N/A N/A
/backbone/C3_p3/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.314538389444351, 14.047922432422638) 27 N/A N/A N/A N/A
/backbone/C3_p3/conv3/act/Sigmoid sigmoid [3.27826e-07f, 0.999921f] 31 N/A N/A N/A N/A
/backbone/C3_p3/conv3/act/Mul multiply [-0.278449f, 9.4413f] 27 N/A N/A N/A N/A
/head/stems.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-21.707200840115547, 17.55050280690193) 26 N/A N/A N/A N/A
/head/stems.0/act/Sigmoid sigmoid [0f, 0.999985f] 31 N/A N/A N/A N/A
/head/stems.0/act/Mul multiply [-0.27822f, 11.0844f] 26 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-32.644154503941536, 14.923042058944702) 25 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.0/act/Sigmoid sigmoid [0f, 1f] 31 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.0/act/Mul multiply [-0.278384f, 14.923f] 25 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-20.479894012212753, 11.55920398235321) 26 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.1/act/Sigmoid sigmoid [0f, 0.99999f] 31 N/A N/A N/A N/A
/head/reg_convs.0/reg_convs.0.1/act/Mul multiply [-0.278411f, 11.5591f] 26 N/A N/A N/A N/A
/head/obj_preds.0/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-26.991130590438843, 5.47461611032486) 26 N/A N/A N/A N/A
/head/Sigmoid sigmoid [0f, 0.991082f] 31 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.8842244297266, 14.570491582155228) 27 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.0/act/Sigmoid sigmoid [1.78814e-07f, 1f] 31 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.0/act/Mul multiply [-0.278331f, 14.5705f] 27 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-25.121805667877197, 42.31040954589844) 25 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.1/act/Sigmoid sigmoid [0f, 1f] 31 N/A N/A N/A N/A
/head/cls_convs.0/cls_convs.0.1/act/Mul multiply [-0.27826f, 42.3104f] 25 N/A N/A N/A N/A
/head/cls_preds.0/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-30.03563190996647, 2.8359824120998383) 26 N/A N/A N/A N/A
/head/Sigmoid_1 sigmoid [0f, 0.94459f] 31 N/A N/A N/A N/A
/head/Concat_output_0_DequantizeLinear contrib.epu.dequantize (-2.265458822250366, 3.690128803253174) 28 N/A N/A N/A N/A
/backbone/bu_conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-25.067522406578064, 18.123141199350357) 26 N/A N/A N/A N/A
/backbone/bu_conv2/act/Sigmoid sigmoid [9.23872e-07f, 1f] 31 N/A N/A N/A N/A
/backbone/bu_conv2/act/Mul multiply [-0.277848f, 18.1231f] 26 N/A N/A N/A N/A
/backbone/C3_n3/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.282727427780628, 14.178294643759727) 27 N/A N/A N/A N/A
/backbone/C3_n3/conv1/act/Sigmoid sigmoid [1.88053e-05f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n3/conv1/act/Mul multiply [-0.278423f, 14.1783f] 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.037997245788574, 12.301718473434448) 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv1/act/Sigmoid sigmoid [0.000140399f, 0.999995f] 31 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv1/act/Mul multiply [-0.278405f, 12.3017f] 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.542821682989597, 14.550440981984138) 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv2/act/Sigmoid sigmoid [0.000152707f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n3/m/m.0/conv2/act/Mul multiply [-0.278255f, 14.5504f] 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-12.637934759259224, 18.054192513227463) 26 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv1/act/Sigmoid sigmoid [3.21865e-06f, 1f] 31 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv1/act/Mul multiply [-0.278244f, 18.0542f] 26 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.538266576826572, 12.562853828072548) 27 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv2/act/Sigmoid sigmoid [1.78814e-07f, 0.999996f] 31 N/A N/A N/A N/A
/backbone/C3_n3/m/m.1/conv2/act/Mul multiply [-0.278258f, 12.4526f] 27 N/A N/A N/A N/A
/backbone/C3_n3/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-17.333375811576843, 14.929476976394653) 26 N/A N/A N/A N/A
/backbone/C3_n3/conv2/act/Sigmoid sigmoid [2.98023e-08f, 0.999987f] 31 N/A N/A N/A N/A
/backbone/C3_n3/conv2/act/Mul multiply [-0.278445f, 11.2602f] 26 N/A N/A N/A N/A
/backbone/C3_n3/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.572869151830673, 14.284887492656708) 27 N/A N/A N/A N/A
/backbone/C3_n3/conv3/act/Sigmoid sigmoid [1.78814e-07f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n3/conv3/act/Mul multiply [-0.278455f, 14.2849f] 27 N/A N/A N/A N/A
/head/stems.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-16.29156956076622, 13.812417671084404) 26 N/A N/A N/A N/A
/head/stems.1/act/Sigmoid sigmoid [8.9407e-08f, 0.999999f] 31 N/A N/A N/A N/A
/head/stems.1/act/Mul multiply [-0.278421f, 13.8124f] 26 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-15.169353075325489, 11.880891919136047) 27 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.0/act/Sigmoid sigmoid [2.08616e-07f, 0.999993f] 31 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.0/act/Mul multiply [-0.278461f, 11.8808f] 27 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-19.467122435569763, 15.491442501544952) 26 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.1/act/Sigmoid sigmoid [0f, 0.999999f] 31 N/A N/A N/A N/A
/head/reg_convs.1/reg_convs.1.1/act/Mul multiply [-0.278243f, 13.9834f] 26 N/A N/A N/A N/A
/head/obj_preds.1/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-21.997052282094955, 6.76832377910614) 26 N/A N/A N/A N/A
/head/Sigmoid_2 sigmoid [0f, 0.997743f] 31 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-18.389152117073536, 9.033267706632614) 26 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.0/act/Sigmoid sigmoid [0f, 0.999881f] 31 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.0/act/Mul multiply [-0.278449f, 9.03219f] 26 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-16.584699511528015, 24.877049267292023) 26 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.1/act/Sigmoid sigmoid [5.96046e-08f, 1f] 31 N/A N/A N/A N/A
/head/cls_convs.1/cls_convs.1.1/act/Mul multiply [-0.278411f, 24.877f] 26 N/A N/A N/A N/A
/head/cls_preds.1/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-29.413846865296364, 3.339563399553299) 26 N/A N/A N/A N/A
/head/Sigmoid_3 sigmoid [0f, 0.965761f] 31 N/A N/A N/A N/A
/head/Concat_1_output_0_DequantizeLinear contrib.epu.dequantize (-2.1162491515278816, 3.3903175182640553) 28 N/A N/A N/A N/A
/backbone/bu_conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.754525884985924, 13.092466294765472) 27 N/A N/A N/A N/A
/backbone/bu_conv1/act/Sigmoid sigmoid [3.1054e-05f, 0.999997f] 31 N/A N/A N/A N/A
/backbone/bu_conv1/act/Mul multiply [-0.278363f, 12.7184f] 27 N/A N/A N/A N/A
/backbone/C3_n4/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-13.740096867084503, 14.745469808578491) 27 N/A N/A N/A N/A
/backbone/C3_n4/conv1/act/Sigmoid sigmoid [2.38419e-06f, 1f] 31 N/A N/A N/A N/A
/backbone/C3_n4/conv1/act/Mul multiply [-0.27819f, 14.7455f] 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-7.549283057451248, 12.930155023932457) 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv1/act/Sigmoid sigmoid [0.00052622f, 0.999997f] 31 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv1/act/Mul multiply [-0.27846f, 12.9301f] 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.557319641113281, 14.173060655593872) 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv2/act/Sigmoid sigmoid [0.000192106f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n4/m/m.0/conv2/act/Mul multiply [-0.278362f, 13.9056f] 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-8.171236664056778, 14.233767092227936) 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv1/act/Sigmoid sigmoid [0.000622928f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv1/act/Mul multiply [-0.278298f, 13.7944f] 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.92063358426094, 11.180648669600487) 27 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv2/act/Sigmoid sigmoid [1.97291e-05f, 0.999986f] 31 N/A N/A N/A N/A
/backbone/C3_n4/m/m.1/conv2/act/Mul multiply [-0.278414f, 11.1805f] 27 N/A N/A N/A N/A
/backbone/C3_n4/conv2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-9.26094800233841, 13.66664171218872) 27 N/A N/A N/A N/A
/backbone/C3_n4/conv2/act/Sigmoid sigmoid [0.000148982f, 0.999999f] 31 N/A N/A N/A N/A
/backbone/C3_n4/conv2/act/Mul multiply [-0.278422f, 13.6666f] 27 N/A N/A N/A N/A
/backbone/C3_n4/conv3/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-13.03932360559702, 7.8727991580963135) 27 N/A N/A N/A N/A
/backbone/C3_n4/conv3/act/Sigmoid sigmoid [2.20537e-06f, 0.999587f] 31 N/A N/A N/A N/A
/backbone/C3_n4/conv3/act/Mul multiply [-0.278343f, 7.78757f] 27 N/A N/A N/A N/A
/head/stems.2/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-10.635362327098846, 11.594288438558578) 27 N/A N/A N/A N/A
/head/stems.2/act/Sigmoid sigmoid [2.62856e-05f, 0.999987f] 31 N/A N/A N/A N/A
/head/stems.2/act/Mul multiply [-0.278373f, 11.2454f] 27 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.207711577415466, 10.443549424409866) 27 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.0/act/Sigmoid sigmoid [1.47521e-05f, 0.999971f] 31 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.0/act/Mul multiply [-0.278462f, 10.4432f] 27 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-13.177685931324959, 8.642508305609226) 27 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.1/act/Sigmoid sigmoid [1.87755e-06f, 0.999752f] 31 N/A N/A N/A N/A
/head/reg_convs.2/reg_convs.2.1/act/Mul multiply [-0.278462f, 8.29817f] 27 N/A N/A N/A N/A
/head/obj_preds.2/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-14.619189396500587, 6.442354649305344) 27 N/A N/A N/A N/A
/head/Sigmoid_4 sigmoid [1.78814e-06f, 0.996065f] 31 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.0/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-11.19583760201931, 10.109674252569675) 27 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.0/act/Sigmoid sigmoid [2.08318e-05f, 0.999959f] 31 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.0/act/Mul multiply [-0.278395f, 10.1093f] 27 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.1/conv/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-12.3151920363307, 15.976465344429016) 26 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.1/act/Sigmoid sigmoid [4.47035e-06f, 1f] 31 N/A N/A N/A N/A
/head/cls_convs.2/cls_convs.2.1/act/Mul multiply [-0.278167f, 15.9765f] 26 N/A N/A N/A N/A
/head/cls_preds.2/Conv_output_0_DequantizeLinear contrib.epu.qlinear_conv2d (-25.770328767597675, 3.964665964245796) 26 N/A N/A N/A N/A
/head/Sigmoid_5 sigmoid [0f, 0.973785f] 31 N/A N/A N/A N/A
/head/Concat_2_output_0_DequantizeLinear contrib.epu.dequantize (-1.8719596862792969, 3.0491714477539062) 28 N/A N/A N/A N/A
contrib.epu.quadric_custom_op (-134217728.0, 134217727.9375) 4 N/A 15 N/A 0
2026-06-19 04:06 - INFO - epu - codegen - START====================build_cpu_runnable_fx_relay
2026-06-19 04:06 - INFO - epu - codegen - START=======================quantize_to_chimera_fx
2026-06-19 04:06 - INFO - epu - codegen - START=================================relay_to_tir
2026-06-19 04:06 - INFO - epu - codegen - START===========================relay_to_epu_relay
2026-06-19 04:06 - INFO - epu - codegen - START==============================adapt_and_order
2026-06-19 04:07 - INFO - epu - mac_counter -
2026-06-19 04:07 - INFO - epu - mac_counter - ============================================================
2026-06-19 04:07 - INFO - epu - mac_counter - MAC Operation Count Summary
2026-06-19 04:07 - INFO - epu - mac_counter - ============================================================
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/stem/conv/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,123,366,400 ops (1,061,683,200 MACs) - /backbone/backbone/dark2/dark2.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark2/dark2.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark2/dark2.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark2/dark2.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark2/dark2.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark2/dark2.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark2/dark2.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/backbone/dark2/dark2.1/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,123,366,400 ops (1,061,683,200 MACs) - /backbone/backbone/dark3/dark3.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark3/dark3.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.2/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.2/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.3/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.3/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.4/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.4/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark3/dark3.1/m/m.5/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark3/dark3.1/m/m.5/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark3/dark3.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/backbone/dark3/dark3.1/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,123,366,400 ops (1,061,683,200 MACs) - /backbone/backbone/dark4/dark4.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark4/dark4.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.2/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.2/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.3/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.3/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.4/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.4/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark4/dark4.1/m/m.5/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark4/dark4.1/m/m.5/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark4/dark4.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/backbone/dark4/dark4.1/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,123,366,400 ops (1,061,683,200 MACs) - /backbone/backbone/dark5/dark5.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark5/dark5.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 943,718,400 ops (471,859,200 MACs) - /backbone/backbone/dark5/dark5.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark5/dark5.2/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark5/dark5.2/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark5/dark5.2/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/backbone/dark5/dark5.2/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/backbone/dark5/dark5.2/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/backbone/dark5/dark5.2/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/backbone/dark5/dark5.2/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/lateral_conv0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p4/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_p4/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_p4/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_p4/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_p4/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p4/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p4/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/reduce_conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p3/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_p3/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_p3/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_p3/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_p3/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p3/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_p3/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /head/stems.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 4,246,732,800 ops (2,123,366,400 MACs) - /head/reg_convs.0/reg_convs.0.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 4,246,732,800 ops (2,123,366,400 MACs) - /head/reg_convs.0/reg_convs.0.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 9,830,400 ops (4,915,200 MACs) - /head/reg_preds.0/Conv_quant
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,457,600 ops (1,228,800 MACs) - /head/obj_preds.0/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 4,246,732,800 ops (2,123,366,400 MACs) - /head/cls_convs.0/cls_convs.0.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 4,246,732,800 ops (2,123,366,400 MACs) - /head/cls_convs.0/cls_convs.0.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 196,608,000 ops (98,304,000 MACs) - /head/cls_preds.0/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/bu_conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/C3_n3/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_n3/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_n3/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_n3/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_n3/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/C3_n3/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_n3/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /head/stems.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /head/reg_convs.1/reg_convs.1.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /head/reg_convs.1/reg_convs.1.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 2,457,600 ops (1,228,800 MACs) - /head/reg_preds.1/Conv_quant
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 614,400 ops (307,200 MACs) - /head/obj_preds.1/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /head/cls_convs.1/cls_convs.1.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /head/cls_convs.1/cls_convs.1.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 49,152,000 ops (24,576,000 MACs) - /head/cls_preds.1/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/bu_conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/C3_n4/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_n4/m/m.0/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_n4/m/m.0/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /backbone/C3_n4/m/m.1/conv1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 1,061,683,200 ops (530,841,600 MACs) - /backbone/C3_n4/m/m.1/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 235,929,600 ops (117,964,800 MACs) - /backbone/C3_n4/conv2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 471,859,200 ops (235,929,600 MACs) - /backbone/C3_n4/conv3/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 117,964,800 ops (58,982,400 MACs) - /head/stems.2/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 265,420,800 ops (132,710,400 MACs) - /head/reg_convs.2/reg_convs.2.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 265,420,800 ops (132,710,400 MACs) - /head/reg_convs.2/reg_convs.2.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 614,400 ops (307,200 MACs) - /head/reg_preds.2/Conv_quant
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 153,600 ops (76,800 MACs) - /head/obj_preds.2/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 265,420,800 ops (132,710,400 MACs) - /head/cls_convs.2/cls_convs.2.0/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 265,420,800 ops (132,710,400 MACs) - /head/cls_convs.2/cls_convs.2.1/conv/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - conv2d: 12,288,000 ops (6,144,000 MACs) - /head/cls_preds.2/Conv_output_0_DequantizeLinear
2026-06-19 04:07 - INFO - epu - mac_counter - ------------------------------------------------------------
2026-06-19 04:07 - INFO - epu - mac_counter - Total: 73,530,316,800 ops (36,765,158,400 MACs)
2026-06-19 04:07 - INFO - epu - mac_counter - ============================================================
2026-06-19 04:07 - INFO - epu - mac_counter -
2026-06-19 04:07 - INFO - epu - codegen - START==============================amend_ctrl_flow
2026-06-19 04:07 - INFO - epu - codegen - START=============================plan_lrm_virtual
2026-06-19 04:08 - INFO - epu - codegen - START==============================amend_ctrl_flow
2026-06-19 04:08 - INFO - epu - codegen - START===============================lrm_alloc_loop
2026-06-19 04:08 - INFO - epu - codegen - START==============================amend_ctrl_flow
2026-06-19 04:08 - INFO - epu - codegen - START================================lrm_splitting
2026-06-19 04:10 - INFO - epu - codegen - START==============================ext_split_relay
2026-06-19 04:11 - INFO - epu - codegen - START====================================build_tir
2026-06-19 04:11 - INFO - epu - iss_testing - Found tranges for input: <tvm.contrib.epu.interval.Interval object at 0x7e40b462ac20>
2026-06-19 04:11 - INFO - epu - iss_testing - Started Running Graph on Chimera ISS...
FILM 35/35: 100%|███████████████████████████████████████████████████| 35/35 [04:23<00:00, 7.52s/it]
2026-06-19 04:16 - INFO - epu - iss_testing - Done 0:04:24.137169
out_vals = list(out_gpnpu.values())
gpnpu_boxes = out_vals[0].tensor
gpnpu_scores = out_vals[1].tensor
gpnpu_classes = out_vals[2].tensor
n_gpnpu = int(np.count_nonzero(gpnpu_scores > 0))
print_detections("GPNPU", gpnpu_boxes, gpnpu_scores, gpnpu_classes, n_gpnpu)
print(f"\nCPU: {n_cpu} detections | GPNPU: {n_gpnpu} detections")
GPNPU: 5 detections
car score=0.944 box=[133, 388, 231, 494]
bus score=0.923 box=[292, 274, 398, 462]
person score=0.785 box=[538, 386, 560, 469]
person score=0.707 box=[502, 383, 522, 468]
person score=0.649 box=[518, 380, 539, 465]
CPU: 5 detections | GPNPU: 5 detections
6. Visualization
compare_detections(
img,
(cpu_boxes, cpu_scores, cpu_classes, n_cpu),
(gpnpu_boxes, gpnpu_scores, gpnpu_classes, n_gpnpu),
)
print("Saved: yolox_e2e_detections.png")
Saved: yolox_e2e_detections.png

7. Performance Profile
The ISS emits per-region cycle counts in profile.json. We use the SDK's built-in profiler to summarize execution cycles, stall cycles, and throughput.
import glob
import tvm.relay.backend.contrib.epu.codegen as epu_codegen
from tvm.contrib.epu.chimera_job import core
build_path = epu_codegen.get_module_build_path("yolox_e2e")
profile_files = glob.glob(str(build_path / "profile*.json"))
if profile_files:
profile_files.sort()
print(f"Profile: {profile_files[0]}")
core._plot_profile_results(profile_files[0], clock_freq=1.0e9)
else:
print("No profile.json found — ensure ISS run completed.")
Profile: /quadric/sdk-cli/examples/models/yolo/yolox_e2e/ccl_build/yolox_e2e/build/profile.json
[SDK-CLI] : TotalCycles: 124,286,945
[SDK-CLI] : Executions/second: 8
compute : ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 77.197M
data_array : ▇▇▇▇ 7.286M
mac : ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 37.115M
data_ocm : ▇ 2.305M
data_external: ▏ 332.549K
Summary
| Model | YOLOX-M (25.3M params, 640x640, COCO 80-class) |
| Pipeline | Backbone (CGC) + Decode + NMS (CCL) — fully on Chimera GPNPU |
| Target | QC-N (8 cores, 16 MACs/PE, 8 MB OCM) |
| Quantization | Asymmetric int8 activations, int8 weights |
| Custom Op | yolox_postprocess.hpp — 8,400 proposals, class-aware NMS |
Postprocess kernel techniques
| Technique | What it does |
|---|---|
| Flow-based argmax | reduce<Direction::Channel> streams 80 class channels through PEs via ReadFlow/WriteFlow |
| Split DMA | Separate memCpy for box+obj (5 ch) and classes (80 ch) with channel offsets |
| Batched RAU tiles | rau::load::tiles / rau::store::tiles for box coordinates |
| FastDiv | Multiply-shift reciprocal for grid coordinate division |
Key takeaways
- Chipy makes it trivial to compose CGC backbones with CCL custom ops — the pipeline is 5 lines of Python
- CCL custom ops can implement complex postprocessing (decode + NMS) entirely in OCM
- Flow-based data access (
reduce,ReadFlow/WriteFlow) is well suited for structured patterns like channel reduction - Region profiling gives per-stage cycle visibility — the backbone dominates, postprocess is <5%
- End-to-end on GPNPU eliminates the host round-trip between backbone and postprocess
Citation
@article{yolox2021,
title = {YOLOX: Exceeding YOLO Series in 2021},
author = {Ge, Zheng and Liu, Songtao and Wang, Feng and Li, Zeming and Sun, Jian},
journal = {arXiv preprint arXiv:2107.08430},
year = {2021}
}