temp commit: i will soft-reset and recommit after next changes

This commit is contained in:
NiccoloN
2026-08-02 11:37:22 +02:00
parent f4a3b012cc
commit 893e90feac
43 changed files with 2159 additions and 2048 deletions
+3
View File
@@ -3,6 +3,7 @@ operations/**/outputs
operations/**/raptor
operations/**/runner
operations/**/simulation
operations/**/*.csv
networks/**/inputs
networks/**/outputs
networks/**/raptor
@@ -14,3 +15,5 @@ networks/**/*.png
networks/**/*.jpg
networks/**/*.csv
!networks/pimcomp_models/results.csv
!networks/pimcomp_models/validation_results.csv
!operations/validation_results.csv
@@ -0,0 +1,6 @@
Operation,Result,Compile,Host mem,Cores mem,Cores,Xbars,Latency,Power,Energy
vgg8-mnist-reconstructed,PASS,1.009 s,1.37 MiB,3.14 MiB,141,761,1.465778 ms,325.627854 mW,477298145.040001 pJ
resnet18-v1-7,PASS,11.548 s,9.89 MiB,40.24 MiB,168,7676,28.099952 ms,312.513408 mW,8781611766.119984 pJ
resnet34-v1-7,PASS,28.495 s,9.90 MiB,48.89 MiB,168,15292,45.781486 ms,326.833870 mW,14962940227.679951 pJ
googlenet-12-latency,PASS,6.573 s,10.74 MiB,22.41 MiB,168,7176,13.371204 ms,457.538139 mW,6117835798.919991 pJ
yolo11n-latency,FAIL,58.572 s,82.55 MiB,185.68 MiB,168,6484,885.264931 ms,189.218985 mW,167508931321.001465 pJ
1 Operation Result Compile Host mem Cores mem Cores Xbars Latency Power Energy
2 vgg8-mnist-reconstructed PASS 1.009 s 1.37 MiB 3.14 MiB 141 761 1.465778 ms 325.627854 mW 477298145.040001 pJ
3 resnet18-v1-7 PASS 11.548 s 9.89 MiB 40.24 MiB 168 7676 28.099952 ms 312.513408 mW 8781611766.119984 pJ
4 resnet34-v1-7 PASS 28.495 s 9.90 MiB 48.89 MiB 168 15292 45.781486 ms 326.833870 mW 14962940227.679951 pJ
5 googlenet-12-latency PASS 6.573 s 10.74 MiB 22.41 MiB 168 7176 13.371204 ms 457.538139 mW 6117835798.919991 pJ
6 yolo11n-latency FAIL 58.572 s 82.55 MiB 185.68 MiB 168 6484 885.264931 ms 189.218985 mW 167508931321.001465 pJ
+6 -3
View File
@@ -43,7 +43,7 @@ and writes the same rows to `validation_results.csv`.
## Complete inventory
The suite contains 165 models. Tensor shapes, attributes, and constants are
The suite contains 168 models. Tensor shapes, attributes, and constants are
defined in `gen_tests.py` and in the checked-in ONNX models.
### Add (5)
@@ -64,7 +64,7 @@ defined in `gen_tests.py` and in the checked-in ONNX models.
| `negative_axis` | Concatenates tensors using a negative axis. |
| `three_inputs_channel_axis` | Concatenates three runtime NCHW tensors along the channel axis. |
### Conv (32)
### Conv (34)
| Case | Description |
|---|---|
@@ -99,6 +99,8 @@ defined in `gen_tests.py` and in the checked-in ONNX models.
| `with_bias_3x3` | Multi-channel 3x3 Conv with bias. |
| `with_constant` | Hand-authored SAME_UPPER Conv with constant weight and bias. |
| `without_kernel_shape_attr` | Conv whose kernel shape is inferred from its weight tensor. |
| `yolo11n_depthwise_head` | YOLO11n pointwise-to-depthwise head boundary at `80x80`, preserving row fragments. |
| `yolo11n_heavy` | Two largest standard YOLO11n Conv-SiLU blocks by MAC count at `64x80x80`. |
| `yolo11n_stem` | First two YOLO11n `Conv-SiLU` blocks at `640x640`, including the distributed activation boundary. |
### Div (6)
@@ -158,7 +160,7 @@ defined in `gen_tests.py` and in the checked-in ONNX models.
| `with_homogeneous_constant` | Adds a constant bias matching the output shape. |
| `with_scalar_constant` | Adds a scalar broadcast bias. |
### MatMul (11)
### MatMul (12)
| Case | Description |
|---|---|
@@ -173,6 +175,7 @@ defined in `gen_tests.py` and in the checked-in ONNX models.
| `left_constant` | Direct 2D MatMul with constant left-hand matrix. |
| `matrix_vector` | Matrix-vector multiplication producing a 1D output. |
| `vector_matrix` | Vector-matrix multiplication producing a 1D output. |
| `yolo_attention` | YOLO11n rank-4 dynamic MatMul-scale-transpose-MatMul attention chain. |
### Mul (5)
+63
View File
@@ -242,6 +242,50 @@ def conv_yolo11n_stem():
save_model(model, "conv/yolo11n_stem", "conv_yolo11n_stem.onnx")
def conv_yolo11n_heavy():
"""Two largest YOLO11n standard Conv-SiLU blocks by MAC count."""
X = helper.make_tensor_value_info("X", TensorProto.FLOAT, [1, 64, 80, 80])
Y = helper.make_tensor_value_info("Y", TensorProto.FLOAT, [1, 64, 80, 80])
rng = np.random.default_rng(111)
W0 = numpy_helper.from_array(rng.uniform(-1, 1, (64, 64, 3, 3)).astype(np.float32), name="W0")
B0 = numpy_helper.from_array(rng.uniform(-1, 1, (64,)).astype(np.float32), name="B0")
W1 = numpy_helper.from_array(rng.uniform(-1, 1, (64, 64, 3, 3)).astype(np.float32), name="W1")
B1 = numpy_helper.from_array(rng.uniform(-1, 1, (64,)).astype(np.float32), name="B1")
nodes = [
helper.make_node("Conv", ["X", "W0", "B0"], ["C0"],
kernel_shape=[3, 3], strides=[1, 1], pads=[1, 1, 1, 1]),
helper.make_node("Sigmoid", ["C0"], ["S0"]),
helper.make_node("Mul", ["C0", "S0"], ["A0"]),
helper.make_node("Conv", ["A0", "W1", "B1"], ["C1"],
kernel_shape=[3, 3], strides=[1, 1], pads=[1, 1, 1, 1]),
helper.make_node("Sigmoid", ["C1"], ["S1"]),
helper.make_node("Mul", ["C1", "S1"], ["Y"]),
]
graph = helper.make_graph(nodes, "conv_yolo11n_heavy", [X], [Y], initializer=[W0, B0, W1, B1])
model = helper.make_model(graph, opset_imports=[helper.make_opsetid("", 13)])
save_model(model, "conv/yolo11n_heavy", "conv_yolo11n_heavy.onnx")
def conv_yolo11n_depthwise_head():
"""YOLO11n pointwise-to-depthwise head boundary at its largest feature map."""
X = helper.make_tensor_value_info("X", TensorProto.FLOAT, [1, 64, 80, 80])
Y = helper.make_tensor_value_info("Y", TensorProto.FLOAT, [1, 64, 80, 80])
rng = np.random.default_rng(110)
W0 = numpy_helper.from_array(rng.uniform(-1, 1, (64, 64, 1, 1)).astype(np.float32), name="W0")
B0 = numpy_helper.from_array(rng.uniform(-1, 1, (64,)).astype(np.float32), name="B0")
W1 = numpy_helper.from_array(rng.uniform(-1, 1, (64, 1, 3, 3)).astype(np.float32), name="W1")
B1 = numpy_helper.from_array(rng.uniform(-1, 1, (64,)).astype(np.float32), name="B1")
nodes = [
helper.make_node("Conv", ["X", "W0", "B0"], ["P"],
kernel_shape=[1, 1], strides=[1, 1], pads=[0, 0, 0, 0]),
helper.make_node("Conv", ["P", "W1", "B1"], ["Y"],
kernel_shape=[3, 3], strides=[1, 1], pads=[1, 1, 1, 1], group=64),
]
graph = helper.make_graph(nodes, "conv_yolo11n_depthwise_head", [X], [Y], initializer=[W0, B0, W1, B1])
model = helper.make_model(graph, opset_imports=[helper.make_opsetid("", 13)])
save_model(model, "conv/yolo11n_depthwise_head", "conv_yolo11n_depthwise_head.onnx")
def conv_pointwise_tiled_chain():
"""Chained pointwise Convs with a tiled intermediate."""
X = helper.make_tensor_value_info("X", TensorProto.FLOAT, [1, 1024, 1, 1])
@@ -760,6 +804,22 @@ def matmul_batched_3d_dynamic():
save_model(model, "matmul/batched_3d_dynamic", "matmul_batched_3d_dynamic.onnx")
def matmul_yolo_attention():
"""YOLO11n attention chain with rank-4 dynamic matrices."""
Q = helper.make_tensor_value_info("Q", TensorProto.FLOAT, [1, 2, 400, 32])
K = helper.make_tensor_value_info("K", TensorProto.FLOAT, [1, 2, 32, 400])
V = helper.make_tensor_value_info("V", TensorProto.FLOAT, [1, 2, 64, 400])
Y = helper.make_tensor_value_info("Y", TensorProto.FLOAT, [1, 2, 64, 400])
scale = numpy_helper.from_array(np.asarray([0.1767767], dtype=np.float32), name="scale")
nodes = [helper.make_node("MatMul", ["Q", "K"], ["scores"]),
helper.make_node("Mul", ["scores", "scale"], ["scaled"]),
helper.make_node("Transpose", ["scaled"], ["weights"], perm=[0, 1, 3, 2]),
helper.make_node("MatMul", ["V", "weights"], ["Y"])]
graph = helper.make_graph(nodes, "matmul_yolo_attention", [Q, K, V], [Y], initializer=[scale])
model = helper.make_model(graph, opset_imports=[helper.make_opsetid("", 13)])
save_model(model, "matmul/yolo_attention", "matmul_yolo_attention.onnx")
def matmul_batched_left_constant():
"""Batched 3D MatMul with constant LHS and runtime RHS."""
rng = np.random.default_rng(70)
@@ -2057,6 +2117,8 @@ if __name__ == "__main__":
conv_huge_pointwise_1024()
conv_huge_pointwise_1024_dynamic()
conv_yolo11n_stem()
conv_yolo11n_heavy()
conv_yolo11n_depthwise_head()
conv_pointwise_tiled_chain()
conv_large_output_channels_1x1()
conv_large_input_channels_1x1()
@@ -2078,6 +2140,7 @@ if __name__ == "__main__":
matmul_dynamic()
matmul_batched_3d()
matmul_batched_3d_dynamic()
matmul_yolo_attention()
matmul_batched_left_constant()
matmul_batched_rhs_broadcast()
matmul_batched_lhs_broadcast()
+165 -162
View File
@@ -1,166 +1,169 @@
Operation,Result,Compile,Host mem,Cores mem,Cores,Xbars,Latency,Power,Energy
add/after_gemm,PASS,0.141 s,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
add/basic,PASS,0.114 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/broadcast_row,PASS,0.110 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/channel_broadcast_1024,PASS,0.105 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
add/leading_dimension_broadcast,PASS,0.137 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
concat/channel_axis,PASS,0.127 s,0.00 MiB,0.00 MiB,1,0,0.000457 ms,78.157549 mW,35718.000000 pJ
concat/negative_axis,PASS,0.102 s,0.00 MiB,0.00 MiB,1,0,0.001043 ms,78.092042 mW,81450.000000 pJ
concat/three_inputs_channel_axis,PASS,0.127 s,0.00 MiB,0.00 MiB,1,0,0.000644 ms,78.149068 mW,50328.000000 pJ
conv/batch_2,PASS,0.102 s,0.00 MiB,0.00 MiB,2,2,0.013694 ms,82.623885 mW,1131451.480000 pJ
conv/batch_4_pointwise,PASS,0.110 s,0.00 MiB,0.01 MiB,5,4,0.003932 ms,116.078576 mW,456420.960000 pJ
conv/depthwise_1024_channels,PASS,0.167 s,0.19 MiB,0.38 MiB,129,128,0.220751 ms,178.454307 mW,39393966.720000 pJ
conv/depthwise_grouped,PASS,0.109 s,0.01 MiB,0.00 MiB,5,4,0.006024 ms,108.326521 mW,652558.960000 pJ
conv/dilated_3x3,PASS,0.143 s,0.00 MiB,0.00 MiB,3,3,0.004045 ms,110.234541 mW,445898.720000 pJ
conv/dynamic,PASS,0.107 s,0.00 MiB,0.00 MiB,5,0,0.001835 ms,92.281199 mW,169336.000000 pJ
conv/explicit_padding,PASS,0.139 s,0.00 MiB,0.00 MiB,4,4,0.004327 ms,115.794768 mW,501043.960000 pJ
conv/grouped_many_groups,PASS,0.616 s,0.05 MiB,0.09 MiB,65,64,0.181845 ms,142.210104 mW,25860196.360000 pJ
conv/grouped_two_groups,PASS,0.145 s,0.00 MiB,0.00 MiB,3,2,0.005360 ms,101.459418 mW,543822.480000 pJ
conv/huge_pointwise_1024,PASS,0.749 s,0.01 MiB,0.01 MiB,1,64,0.028261 ms,133.488743 mW,3772525.360000 pJ
conv/huge_pointwise_1024_dynamic,PASS,0.097 s,8.04 MiB,12.61 MiB,168,0,2.627964 ms,169.518697 mW,445489032.000000 pJ
conv/kernel_3x3,PASS,0.155 s,0.00 MiB,0.00 MiB,3,3,0.003091 ms,115.862414 mW,358130.720000 pJ
conv/kernel_equals_input_spatial,PASS,0.156 s,0.00 MiB,0.00 MiB,1,2,0.008443 ms,83.863849 mW,708062.480000 pJ
conv/large_input_channels_1x1,PASS,0.160 s,0.01 MiB,0.01 MiB,1,8,0.017167 ms,89.416900 mW,1535019.920000 pJ
conv/large_output_channels_1x1,PASS,0.141 s,0.00 MiB,0.01 MiB,1,8,0.004964 ms,117.628106 mW,583905.920000 pJ
conv/large_spatial,PASS,0.141 s,0.00 MiB,0.01 MiB,6,6,0.004096 ms,129.015000 mW,528445.440000 pJ
conv/multi_channel,PASS,0.143 s,0.00 MiB,0.00 MiB,3,3,0.005148 ms,106.453520 mW,548022.720000 pJ
conv/non_square_kernel_1x3,PASS,0.127 s,0.00 MiB,0.00 MiB,5,5,0.004029 ms,123.600943 mW,497988.200000 pJ
conv/non_square_kernel_3x1,PASS,0.085 s,0.00 MiB,0.00 MiB,3,3,0.005526 ms,105.464843 mW,582798.720000 pJ
conv/non_uniform_stride,PASS,0.120 s,0.00 MiB,0.00 MiB,4,4,0.005808 ms,110.081433 mW,639352.960000 pJ
conv/pointwise_1x1,PASS,0.139 s,0.00 MiB,0.00 MiB,4,4,0.004539 ms,114.835858 mW,521239.960000 pJ
conv/pointwise_tiled_chain,PASS,0.943 s,0.01 MiB,0.02 MiB,2,80,0.084437 ms,102.289307 mW,8637002.200000 pJ
conv/real_asymmetric_padding,PASS,0.115 s,0.00 MiB,0.00 MiB,4,4,0.005232 ms,111.870214 mW,585304.960000 pJ
conv/relu_conv_store,PASS,0.107 s,0.05 MiB,0.08 MiB,32,32,0.062978 ms,246.649827 mW,15533512.800000 pJ
conv/same_lower_3x3,PASS,0.094 s,0.00 MiB,0.00 MiB,5,5,0.004700 ms,119.232170 mW,560391.200000 pJ
conv/same_padding_3x3,PASS,0.126 s,0.00 MiB,0.00 MiB,5,5,0.004700 ms,119.232170 mW,560391.200000 pJ
conv/simple,PASS,0.125 s,0.00 MiB,0.00 MiB,2,2,0.003148 ms,94.665972 mW,298008.480000 pJ
conv/stride_2,PASS,0.146 s,0.00 MiB,0.00 MiB,2,2,0.002827 ms,96.393873 mW,272505.480000 pJ
conv/with_bias_3x3,PASS,0.121 s,0.00 MiB,0.00 MiB,3,3,0.004898 ms,107.176546 mW,524950.720000 pJ
conv/with_constant,PASS,0.106 s,0.00 MiB,0.00 MiB,3,3,0.004273 ms,109.362677 mW,467306.720000 pJ
conv/without_kernel_shape_attr,PASS,0.105 s,0.00 MiB,0.00 MiB,3,3,0.003091 ms,115.862414 mW,358130.720000 pJ
conv/yolo11n_stem,PASS,3.091 s,29.20 MiB,31.38 MiB,168,488,9.799213 ms,361.075203 mW,3538252825.000010 pJ
div/after_gemm,PASS,0.130 s,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
div/basic,PASS,0.116 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/channel_broadcast_1024,PASS,0.121 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/leading_dimension_broadcast,PASS,0.095 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/runtime_scalar_rhs,PASS,0.126 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/scalar_constant,PASS,0.069 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
gather/3d_input_axis1,PASS,0.121 s,0.00 MiB,0.00 MiB,1,0,0.000589 ms,78.081494 mW,45990.000000 pJ
gather/axis0_matrix_indices,PASS,0.088 s,0.00 MiB,0.00 MiB,1,0,0.000697 ms,78.068867 mW,54414.000000 pJ
gather/axis1,PASS,0.123 s,0.00 MiB,0.00 MiB,1,0,0.000801 ms,78.059925 mW,62526.000000 pJ
gather/negative_axis,PASS,0.087 s,0.00 MiB,0.00 MiB,1,0,0.001437 ms,78.033403 mW,112134.000000 pJ
gather/negative_indices,PASS,0.115 s,0.00 MiB,0.00 MiB,1,0,0.000376 ms,78.127660 mW,29376.000000 pJ
gemm/alpha_beta,PASS,0.121 s,0.01 MiB,0.01 MiB,5,4,0.007456 ms,105.272125 mW,784908.960000 pJ
gemm/bias_rank2_broadcast,PASS,0.127 s,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/dynamic,PASS,0.084 s,0.00 MiB,0.00 MiB,5,0,0.002421 ms,91.480793 mW,221475.000000 pJ
gemm/dynamic_alpha,PASS,0.104 s,0.00 MiB,0.00 MiB,5,0,0.003262 ms,91.415696 mW,298198.000000 pJ
gemm/dynamic_beta,PASS,0.110 s,0.00 MiB,0.00 MiB,5,0,0.004365 ms,91.316151 mW,398595.000000 pJ
gemm/dynamic_bias,PASS,0.092 s,0.00 MiB,0.00 MiB,5,0,0.002665 ms,91.445779 mW,243703.000000 pJ
gemm/dynamic_bias_alpha_beta,PASS,0.089 s,0.00 MiB,0.00 MiB,5,0,0.005629 ms,91.279268 mW,513811.000000 pJ
gemm/dynamic_transB,PASS,0.077 s,0.00 MiB,0.00 MiB,5,0,0.001301 ms,91.378171 mW,118883.000000 pJ
gemm/huge_1024,PASS,0.219 s,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
gemm/large,PASS,0.097 s,0.02 MiB,0.03 MiB,17,16,0.011229 ms,140.152181 mW,1573768.840000 pJ
gemm/large_k_small_n,PASS,0.106 s,0.01 MiB,0.01 MiB,9,8,0.004748 ms,133.481449 mW,633769.920000 pJ
gemm/non_square,PASS,0.102 s,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/scalar_bias,PASS,0.111 s,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/simple,PASS,0.135 s,0.03 MiB,0.08 MiB,42,40,0.021640 ms,151.774196 mW,3284393.600000 pJ
gemm/small,PASS,0.074 s,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
gemm/small_k_large_n,PASS,0.129 s,0.01 MiB,0.02 MiB,17,8,0.007962 ms,131.005014 mW,1043061.920000 pJ
gemm/transA,PASS,0.089 s,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transA_transB,PASS,0.115 s,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transB,PASS,0.068 s,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/transB_with_bias,PASS,0.069 s,0.01 MiB,0.01 MiB,5,4,0.005046 ms,110.546762 mW,557818.960000 pJ
gemm/with_bias,PASS,0.113 s,0.01 MiB,0.01 MiB,5,4,0.005562 ms,108.767882 mW,604966.960000 pJ
gemv/constant,PASS,0.112 s,0.00 MiB,0.00 MiB,0,0,0.000000 ms,2.000000 mW,0.000000 pJ
gemv/simple,PASS,0.136 s,0.00 MiB,0.01 MiB,6,4,0.005160 ms,111.150380 mW,573535.960000 pJ
gemv/with_heterogeneous_constant,PASS,0.138 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_homogeneous_constant,PASS,0.140 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_scalar_constant,PASS,0.124 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
matmul/basic,PASS,0.081 s,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
matmul/batched_3d,PASS,0.133 s,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/batched_3d_dynamic,PASS,0.105 s,0.00 MiB,0.00 MiB,9,0,0.003525 ms,92.330213 mW,325464.000000 pJ
matmul/batched_left_constant,PASS,0.136 s,0.00 MiB,0.02 MiB,9,8,0.008822 ms,114.385164 mW,1009105.920000 pJ
matmul/batched_lhs_broadcast,PASS,0.133 s,0.00 MiB,0.01 MiB,5,4,0.005681 ms,109.389361 mW,621440.960000 pJ
matmul/batched_rhs_broadcast,PASS,0.134 s,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/dynamic,PASS,0.093 s,0.00 MiB,0.00 MiB,5,0,0.001621 ms,91.421962 mW,148195.000000 pJ
matmul/huge_1024,PASS,0.277 s,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
matmul/left_constant,PASS,0.123 s,0.00 MiB,0.01 MiB,5,4,0.005853 ms,108.861944 mW,637168.960000 pJ
matmul/matrix_vector,PASS,0.150 s,0.52 MiB,0.78 MiB,168,173,0.384660 ms,202.131271 mW,77751814.880000 pJ
matmul/vector_matrix,PASS,0.186 s,0.01 MiB,0.01 MiB,9,8,0.007409 ms,118.680243 mW,879301.920000 pJ
mul/after_conv,PASS,0.127 s,0.00 MiB,0.00 MiB,4,3,0.005453 ms,107.639046 mW,586955.720000 pJ
mul/basic,PASS,0.070 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/channel_broadcast_1024,PASS,0.065 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
mul/leading_dimension_broadcast,PASS,0.108 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/scalar_constant,PASS,0.082 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
pool/avg_basic,PASS,0.070 s,0.00 MiB,0.00 MiB,1,0,0.011939 ms,78.022112 mW,931506.000000 pJ
pool/avg_ceil_mode,PASS,0.107 s,0.00 MiB,0.00 MiB,1,0,0.004359 ms,78.033035 mW,340146.000000 pJ
pool/avg_explicit_padding,PASS,0.111 s,0.00 MiB,0.00 MiB,1,0,0.008822 ms,78.027205 mW,688356.000000 pJ
pool/avg_include_pad,PASS,0.075 s,0.00 MiB,0.00 MiB,1,0,0.008506 ms,78.016929 mW,663612.000000 pJ
pool/avg_large_channels,PASS,0.064 s,0.04 MiB,0.02 MiB,1,0,0.178249 ms,78.280327 mW,13953390.000000 pJ
pool/avg_non_uniform_stride,PASS,0.068 s,0.00 MiB,0.00 MiB,1,0,0.014513 ms,78.016537 mW,1132254.000000 pJ
pool/avg_real_asymmetric_padding,PASS,0.064 s,0.00 MiB,0.00 MiB,1,0,0.025206 ms,78.024756 mW,1966692.000000 pJ
pool/max_after_conv,PASS,0.070 s,0.00 MiB,0.00 MiB,6,4,0.006452 ms,96.374606 mW,621808.960000 pJ
add/after_gemm,PASS,0.072 s,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
add/basic,PASS,0.049 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/broadcast_row,PASS,0.048 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/channel_broadcast_1024,PASS,0.051 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
add/leading_dimension_broadcast,PASS,0.051 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
concat/channel_axis,PASS,0.051 s,0.00 MiB,0.00 MiB,1,0,0.000457 ms,78.157549 mW,35718.000000 pJ
concat/negative_axis,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,0.001043 ms,78.092042 mW,81450.000000 pJ
concat/three_inputs_channel_axis,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,0.000644 ms,78.149068 mW,50328.000000 pJ
conv/batch_2,PASS,0.059 s,0.00 MiB,0.00 MiB,2,2,0.013694 ms,82.623885 mW,1131451.480000 pJ
conv/batch_4_pointwise,PASS,0.056 s,0.00 MiB,0.01 MiB,5,4,0.003932 ms,116.078576 mW,456420.960000 pJ
conv/depthwise_1024_channels,PASS,0.081 s,0.19 MiB,0.38 MiB,129,128,0.220751 ms,178.454307 mW,39393966.720000 pJ
conv/depthwise_grouped,PASS,0.059 s,0.01 MiB,0.00 MiB,5,4,0.006024 ms,108.326521 mW,652558.960000 pJ
conv/dilated_3x3,PASS,0.059 s,0.00 MiB,0.00 MiB,3,3,0.004045 ms,110.234541 mW,445898.720000 pJ
conv/dynamic,PASS,0.059 s,0.00 MiB,0.00 MiB,5,0,0.001835 ms,92.281199 mW,169336.000000 pJ
conv/explicit_padding,PASS,0.058 s,0.00 MiB,0.00 MiB,4,4,0.004327 ms,115.794768 mW,501043.960000 pJ
conv/grouped_many_groups,PASS,0.505 s,0.05 MiB,0.09 MiB,65,64,0.181845 ms,142.210104 mW,25860196.360000 pJ
conv/grouped_two_groups,PASS,0.061 s,0.00 MiB,0.00 MiB,3,2,0.005360 ms,101.459418 mW,543822.480000 pJ
conv/huge_pointwise_1024,PASS,0.643 s,0.01 MiB,0.01 MiB,1,64,0.028261 ms,133.488743 mW,3772525.360000 pJ
conv/huge_pointwise_1024_dynamic,PASS,0.081 s,8.04 MiB,12.61 MiB,168,0,2.627964 ms,169.518697 mW,445489032.000000 pJ
conv/kernel_3x3,PASS,0.056 s,0.00 MiB,0.00 MiB,3,3,0.003091 ms,115.862414 mW,358130.720000 pJ
conv/kernel_equals_input_spatial,PASS,0.060 s,0.00 MiB,0.00 MiB,1,2,0.008443 ms,83.863849 mW,708062.480000 pJ
conv/large_input_channels_1x1,PASS,0.088 s,0.01 MiB,0.01 MiB,1,8,0.017167 ms,89.416900 mW,1535019.920000 pJ
conv/large_output_channels_1x1,PASS,0.087 s,0.00 MiB,0.01 MiB,1,8,0.004964 ms,117.628106 mW,583905.920000 pJ
conv/large_spatial,PASS,0.055 s,0.00 MiB,0.01 MiB,6,6,0.004096 ms,129.015000 mW,528445.440000 pJ
conv/multi_channel,PASS,0.056 s,0.00 MiB,0.00 MiB,3,3,0.005148 ms,106.453520 mW,548022.720000 pJ
conv/non_square_kernel_1x3,PASS,0.056 s,0.00 MiB,0.00 MiB,5,5,0.004029 ms,123.600943 mW,497988.200000 pJ
conv/non_square_kernel_3x1,PASS,0.058 s,0.00 MiB,0.00 MiB,3,3,0.005526 ms,105.464843 mW,582798.720000 pJ
conv/non_uniform_stride,PASS,0.062 s,0.00 MiB,0.00 MiB,4,4,0.005808 ms,110.081433 mW,639352.960000 pJ
conv/pointwise_1x1,PASS,0.057 s,0.00 MiB,0.00 MiB,4,4,0.004539 ms,114.835858 mW,521239.960000 pJ
conv/pointwise_tiled_chain,PASS,0.771 s,0.01 MiB,0.02 MiB,2,80,0.084437 ms,102.289307 mW,8637002.200000 pJ
conv/real_asymmetric_padding,PASS,0.055 s,0.00 MiB,0.00 MiB,4,4,0.005232 ms,111.870214 mW,585304.960000 pJ
conv/relu_conv_store,PASS,0.076 s,0.02 MiB,0.10 MiB,32,32,0.064390 ms,243.916397 mW,15705776.800000 pJ
conv/same_lower_3x3,PASS,0.057 s,0.00 MiB,0.00 MiB,5,5,0.004700 ms,119.232170 mW,560391.200000 pJ
conv/same_padding_3x3,PASS,0.060 s,0.00 MiB,0.00 MiB,5,5,0.004700 ms,119.232170 mW,560391.200000 pJ
conv/simple,PASS,0.055 s,0.00 MiB,0.00 MiB,2,2,0.003148 ms,94.665972 mW,298008.480000 pJ
conv/stride_2,PASS,0.053 s,0.00 MiB,0.00 MiB,2,2,0.002827 ms,96.393873 mW,272505.480000 pJ
conv/with_bias_3x3,PASS,0.055 s,0.00 MiB,0.00 MiB,3,3,0.004898 ms,107.176546 mW,524950.720000 pJ
conv/with_constant,PASS,0.073 s,0.00 MiB,0.00 MiB,3,3,0.004273 ms,109.362677 mW,467306.720000 pJ
conv/without_kernel_shape_attr,PASS,0.057 s,0.00 MiB,0.00 MiB,3,3,0.003091 ms,115.862414 mW,358130.720000 pJ
conv/yolo11n_depthwise_head,PASS,0.509 s,4.82 MiB,15.92 MiB,160,720,4.105780 ms,492.826315 mW,2023436428.000010 pJ
conv/yolo11n_heavy,PASS,0.488 s,4.82 MiB,20.66 MiB,160,800,6.275385 ms,418.028199 mW,2623287892.000010 pJ
conv/yolo11n_stem,PASS,1.730 s,12.86 MiB,31.38 MiB,168,488,9.799204 ms,361.075380 mW,3538251304.000010 pJ
div/after_gemm,PASS,0.059 s,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
div/basic,PASS,0.048 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/channel_broadcast_1024,PASS,0.051 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/leading_dimension_broadcast,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/runtime_scalar_rhs,PASS,0.057 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/scalar_constant,PASS,0.049 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
gather/3d_input_axis1,PASS,0.050 s,0.00 MiB,0.00 MiB,1,0,0.000589 ms,78.081494 mW,45990.000000 pJ
gather/axis0_matrix_indices,PASS,0.050 s,0.00 MiB,0.00 MiB,1,0,0.000697 ms,78.068867 mW,54414.000000 pJ
gather/axis1,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,0.000801 ms,78.059925 mW,62526.000000 pJ
gather/negative_axis,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,0.001437 ms,78.033403 mW,112134.000000 pJ
gather/negative_indices,PASS,0.052 s,0.00 MiB,0.00 MiB,1,0,0.000376 ms,78.127660 mW,29376.000000 pJ
gemm/alpha_beta,PASS,0.056 s,0.01 MiB,0.01 MiB,5,4,0.007456 ms,105.272125 mW,784908.960000 pJ
gemm/bias_rank2_broadcast,PASS,0.056 s,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/dynamic,PASS,0.054 s,0.00 MiB,0.00 MiB,5,0,0.002421 ms,91.480793 mW,221475.000000 pJ
gemm/dynamic_alpha,PASS,0.056 s,0.00 MiB,0.00 MiB,5,0,0.003262 ms,91.415696 mW,298198.000000 pJ
gemm/dynamic_beta,PASS,0.059 s,0.00 MiB,0.00 MiB,5,0,0.004365 ms,91.316151 mW,398595.000000 pJ
gemm/dynamic_bias,PASS,0.056 s,0.00 MiB,0.00 MiB,5,0,0.002665 ms,91.445779 mW,243703.000000 pJ
gemm/dynamic_bias_alpha_beta,PASS,0.053 s,0.00 MiB,0.00 MiB,5,0,0.005629 ms,91.279268 mW,513811.000000 pJ
gemm/dynamic_transB,PASS,0.054 s,0.00 MiB,0.00 MiB,5,0,0.001301 ms,91.378171 mW,118883.000000 pJ
gemm/huge_1024,PASS,0.157 s,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
gemm/large,PASS,0.067 s,0.02 MiB,0.03 MiB,17,16,0.011229 ms,140.152181 mW,1573768.840000 pJ
gemm/large_k_small_n,PASS,0.097 s,0.01 MiB,0.01 MiB,9,8,0.004748 ms,133.481449 mW,633769.920000 pJ
gemm/non_square,PASS,0.060 s,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/scalar_bias,PASS,0.054 s,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/simple,PASS,0.071 s,0.03 MiB,0.08 MiB,42,40,0.021640 ms,151.774196 mW,3284393.600000 pJ
gemm/small,PASS,0.052 s,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
gemm/small_k_large_n,PASS,0.089 s,0.01 MiB,0.02 MiB,17,8,0.007962 ms,131.005014 mW,1043061.920000 pJ
gemm/transA,PASS,0.057 s,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transA_transB,PASS,0.053 s,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transB,PASS,0.062 s,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/transB_with_bias,PASS,0.057 s,0.01 MiB,0.01 MiB,5,4,0.005046 ms,110.546762 mW,557818.960000 pJ
gemm/with_bias,PASS,0.056 s,0.01 MiB,0.01 MiB,5,4,0.005562 ms,108.767882 mW,604966.960000 pJ
gemv/constant,PASS,0.051 s,0.00 MiB,0.00 MiB,0,0,0.000000 ms,2.000000 mW,0.000000 pJ
gemv/simple,PASS,0.066 s,0.00 MiB,0.01 MiB,6,4,0.005160 ms,111.150380 mW,573535.960000 pJ
gemv/with_heterogeneous_constant,PASS,0.066 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_homogeneous_constant,PASS,0.063 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_scalar_constant,PASS,0.064 s,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
matmul/basic,PASS,0.064 s,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
matmul/batched_3d,PASS,0.058 s,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/batched_3d_dynamic,PASS,0.053 s,0.00 MiB,0.00 MiB,4,0,0.001822 ms,92.192645 mW,167975.000000 pJ
matmul/batched_left_constant,PASS,0.058 s,0.00 MiB,0.02 MiB,9,8,0.008822 ms,114.385164 mW,1009105.920000 pJ
matmul/batched_lhs_broadcast,PASS,0.056 s,0.00 MiB,0.01 MiB,5,4,0.005681 ms,109.389361 mW,621440.960000 pJ
matmul/batched_rhs_broadcast,PASS,0.059 s,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/dynamic,PASS,0.054 s,0.00 MiB,0.00 MiB,5,0,0.001621 ms,91.421962 mW,148195.000000 pJ
matmul/huge_1024,PASS,0.142 s,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
matmul/left_constant,PASS,0.064 s,0.00 MiB,0.01 MiB,5,4,0.005853 ms,108.861944 mW,637168.960000 pJ
matmul/matrix_vector,PASS,0.097 s,0.52 MiB,0.78 MiB,168,173,0.384660 ms,202.131271 mW,77751814.880000 pJ
matmul/vector_matrix,PASS,0.086 s,0.01 MiB,0.01 MiB,9,8,0.007409 ms,118.680243 mW,879301.920000 pJ
matmul/yolo_attention,PASS,0.417 s,1.02 MiB,43.44 MiB,168,0,8.151445 ms,170.003707 mW,1385775865.000000 pJ
mul/after_conv,PASS,0.060 s,0.00 MiB,0.00 MiB,4,3,0.005453 ms,107.639046 mW,586955.720000 pJ
mul/basic,PASS,0.051 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/channel_broadcast_1024,PASS,0.060 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
mul/leading_dimension_broadcast,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/scalar_constant,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
pool/avg_basic,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,0.011939 ms,78.022112 mW,931506.000000 pJ
pool/avg_ceil_mode,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,0.004359 ms,78.033035 mW,340146.000000 pJ
pool/avg_explicit_padding,PASS,0.062 s,0.00 MiB,0.00 MiB,1,0,0.008822 ms,78.027205 mW,688356.000000 pJ
pool/avg_include_pad,PASS,0.055 s,0.00 MiB,0.00 MiB,1,0,0.008506 ms,78.016929 mW,663612.000000 pJ
pool/avg_large_channels,PASS,0.067 s,0.04 MiB,0.02 MiB,1,0,0.178249 ms,78.280327 mW,13953390.000000 pJ
pool/avg_non_uniform_stride,PASS,0.060 s,0.00 MiB,0.00 MiB,1,0,0.014513 ms,78.016537 mW,1132254.000000 pJ
pool/avg_real_asymmetric_padding,PASS,0.071 s,0.00 MiB,0.00 MiB,1,0,0.025206 ms,78.024756 mW,1966692.000000 pJ
pool/max_after_conv,PASS,0.066 s,0.00 MiB,0.00 MiB,6,4,0.006452 ms,96.374606 mW,621808.960000 pJ
pool/max_basic,PASS,0.063 s,0.00 MiB,0.00 MiB,3,0,0.001634 ms,92.132191 mW,150544.000000 pJ
pool/max_ceil_mode,PASS,0.065 s,0.00 MiB,0.00 MiB,2,0,0.001297 ms,79.111025 mW,102607.000000 pJ
pool/max_global_style_kernel_equals_input,PASS,0.089 s,0.00 MiB,0.00 MiB,1,0,0.004366 ms,78.010994 mW,340596.000000 pJ
pool/max_non_square_kernel,PASS,0.103 s,0.00 MiB,0.00 MiB,4,0,0.003409 ms,93.253447 mW,317901.000000 pJ
pool/max_real_asymmetric_padding,PASS,0.088 s,0.00 MiB,0.00 MiB,4,0,0.003078 ms,93.124756 mW,286638.000000 pJ
pool/max_same_upper,PASS,0.065 s,0.00 MiB,0.00 MiB,3,0,0.003024 ms,92.095238 mW,278496.000000 pJ
pool/max_stride2_multichannel,PASS,0.086 s,0.00 MiB,0.00 MiB,3,0,0.004012 ms,92.269192 mW,370184.000000 pJ
reduce_mean/4d_spatial,PASS,0.061 s,0.00 MiB,0.00 MiB,3,0,0.000321 ms,92.448598 mW,29676.000000 pJ
reduce_mean/4d_spatial_keepdims_0,PASS,0.067 s,0.00 MiB,0.00 MiB,4,0,0.000655 ms,94.352672 mW,61801.000000 pJ
reduce_mean/after_conv,PASS,0.115 s,0.00 MiB,0.00 MiB,5,3,0.005342 ms,106.951089 mW,571332.720000 pJ
reduce_mean/all_axes_keepdims_0,PASS,0.103 s,0.00 MiB,0.00 MiB,2,0,0.000391 ms,79.237852 mW,30982.000000 pJ
reduce_mean/all_axes_keepdims_1,PASS,0.086 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/basic,PASS,0.099 s,0.00 MiB,0.00 MiB,4,0,0.000373 ms,93.514745 mW,34881.000000 pJ
reduce_mean/channel_axis_nchw,PASS,0.078 s,0.03 MiB,0.02 MiB,4,0,0.164926 ms,93.596631 mW,15436518.000000 pJ
reduce_mean/keepdims_0,PASS,0.073 s,0.00 MiB,0.00 MiB,5,0,0.000748 ms,91.401070 mW,68368.000000 pJ
reduce_mean/large_dimension_1024,PASS,0.115 s,0.01 MiB,0.00 MiB,1,0,0.002785 ms,78.017235 mW,217278.000000 pJ
reduce_mean/legacy_axes_1_2_keepdims_1,PASS,0.074 s,0.00 MiB,0.00 MiB,2,0,0.000271 ms,79.354244 mW,21505.000000 pJ
reduce_mean/legacy_axis1_keepdims_0,PASS,0.111 s,0.00 MiB,0.00 MiB,9,0,0.001986 ms,92.501511 mW,183708.000000 pJ
reduce_mean/legacy_axis1_keepdims_1,PASS,0.086 s,0.00 MiB,0.00 MiB,8,0,0.001373 ms,94.559359 mW,129830.000000 pJ
reduce_mean/legacy_empty_axes_noop,PASS,0.115 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/legacy_nchw_spatial,PASS,0.090 s,0.00 MiB,0.00 MiB,3,0,0.000321 ms,92.448598 mW,29676.000000 pJ
reduce_mean/legacy_negative_axis,PASS,0.110 s,0.00 MiB,0.00 MiB,6,0,0.000553 ms,93.520796 mW,51717.000000 pJ
reduce_mean/legacy_reduce_all_keepdims_1,PASS,0.107 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/negative_axis,PASS,0.120 s,0.00 MiB,0.00 MiB,6,0,0.000553 ms,93.520796 mW,51717.000000 pJ
relu/4d,PASS,0.116 s,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
relu/after_conv,PASS,0.078 s,0.00 MiB,0.00 MiB,3,3,0.004956 ms,106.998935 mW,530286.720000 pJ
relu/after_gemm,PASS,0.077 s,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
relu/basic,PASS,0.066 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reshape/4d_to_2d_flatten,PASS,0.098 s,0.00 MiB,0.00 MiB,1,0,0.000258 ms,78.279070 mW,20196.000000 pJ
reshape/infer_dim_minus_one,PASS,0.105 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/same_rank,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/zero_copies_input_dim,PASS,0.090 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
resize/height_only,PASS,0.104 s,0.00 MiB,0.00 MiB,1,0,0.000795 ms,78.060377 mW,62058.000000 pJ
resize/nearest_2x,PASS,0.104 s,0.00 MiB,0.00 MiB,1,0,0.001422 ms,78.033755 mW,110964.000000 pJ
resize/nearest_downsample,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,0.000481 ms,78.099792 mW,37566.000000 pJ
resize/non_uniform,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,0.002108 ms,78.034156 mW,164496.000000 pJ
resize/width_only,PASS,0.068 s,0.00 MiB,0.00 MiB,1,0,0.000792 ms,78.060606 mW,61824.000000 pJ
resize/with_sizes,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,0.000951 ms,78.050473 mW,74226.000000 pJ
sigmoid/4d,PASS,0.104 s,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
sigmoid/after_gemm,PASS,0.118 s,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
sigmoid/basic,PASS,0.083 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
slice/2d_basic,PASS,0.067 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/after_conv,PASS,0.111 s,0.00 MiB,0.01 MiB,7,6,0.011296 ms,118.190765 mW,1335082.880000 pJ
slice/default_axes,PASS,0.065 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/large_channel_1024,PASS,0.060 s,0.01 MiB,0.00 MiB,1,0,0.002832 ms,78.144068 mW,221304.000000 pJ
slice/nchw_spatial_crop,PASS,0.067 s,0.00 MiB,0.00 MiB,1,0,0.001302 ms,78.239631 mW,101868.000000 pJ
slice/negative_axis,PASS,0.098 s,0.00 MiB,0.00 MiB,1,0,0.000562 ms,78.298932 mW,44004.000000 pJ
slice/negative_indices,PASS,0.106 s,0.00 MiB,0.00 MiB,1,0,0.000322 ms,78.298137 mW,25212.000000 pJ
slice/step2,PASS,0.068 s,0.00 MiB,0.00 MiB,1,0,0.002042 ms,78.293830 mW,159876.000000 pJ
softmax/3d_last_axis,PASS,0.072 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/basic,PASS,0.088 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/channel_axis,PASS,0.110 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/large_dimension_1024,PASS,0.104 s,0.01 MiB,0.01 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/negative_axis,PASS,0.118 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
split/basic,PASS,0.077 s,0.00 MiB,0.00 MiB,1,0,0.000403 ms,78.297767 mW,31554.000000 pJ
split/equal_three_way,PASS,0.107 s,0.00 MiB,0.00 MiB,1,0,0.000564 ms,78.297872 mW,44160.000000 pJ
split/negative_axis,PASS,0.111 s,0.00 MiB,0.00 MiB,1,0,0.001083 ms,78.288089 mW,84786.000000 pJ
split/uneven_channel_axis_4d,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
pool/max_ceil_mode,PASS,0.078 s,0.00 MiB,0.00 MiB,2,0,0.001297 ms,79.111025 mW,102607.000000 pJ
pool/max_global_style_kernel_equals_input,PASS,0.067 s,0.00 MiB,0.00 MiB,1,0,0.004366 ms,78.010994 mW,340596.000000 pJ
pool/max_non_square_kernel,PASS,0.073 s,0.00 MiB,0.00 MiB,4,0,0.003409 ms,93.253447 mW,317901.000000 pJ
pool/max_real_asymmetric_padding,PASS,0.064 s,0.00 MiB,0.00 MiB,4,0,0.003078 ms,93.124756 mW,286638.000000 pJ
pool/max_same_upper,PASS,0.063 s,0.00 MiB,0.00 MiB,3,0,0.003024 ms,92.095238 mW,278496.000000 pJ
pool/max_stride2_multichannel,PASS,0.066 s,0.00 MiB,0.00 MiB,3,0,0.004012 ms,92.269192 mW,370184.000000 pJ
reduce_mean/4d_spatial,PASS,0.078 s,0.00 MiB,0.00 MiB,3,0,0.000321 ms,92.448598 mW,29676.000000 pJ
reduce_mean/4d_spatial_keepdims_0,PASS,0.066 s,0.00 MiB,0.00 MiB,4,0,0.000655 ms,94.352672 mW,61801.000000 pJ
reduce_mean/after_conv,PASS,0.068 s,0.00 MiB,0.00 MiB,5,3,0.005342 ms,106.951089 mW,571332.720000 pJ
reduce_mean/all_axes_keepdims_0,PASS,0.067 s,0.00 MiB,0.00 MiB,2,0,0.000391 ms,79.237852 mW,30982.000000 pJ
reduce_mean/all_axes_keepdims_1,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/basic,PASS,0.052 s,0.00 MiB,0.00 MiB,4,0,0.000373 ms,93.514745 mW,34881.000000 pJ
reduce_mean/channel_axis_nchw,PASS,0.054 s,0.03 MiB,0.02 MiB,4,0,0.164926 ms,93.596631 mW,15436518.000000 pJ
reduce_mean/keepdims_0,PASS,0.054 s,0.00 MiB,0.00 MiB,5,0,0.000748 ms,91.401070 mW,68368.000000 pJ
reduce_mean/large_dimension_1024,PASS,0.056 s,0.01 MiB,0.00 MiB,1,0,0.002785 ms,78.017235 mW,217278.000000 pJ
reduce_mean/legacy_axes_1_2_keepdims_1,PASS,0.064 s,0.00 MiB,0.00 MiB,2,0,0.000271 ms,79.354244 mW,21505.000000 pJ
reduce_mean/legacy_axis1_keepdims_0,PASS,0.071 s,0.00 MiB,0.00 MiB,9,0,0.001986 ms,92.501511 mW,183708.000000 pJ
reduce_mean/legacy_axis1_keepdims_1,PASS,0.065 s,0.00 MiB,0.00 MiB,8,0,0.001373 ms,94.559359 mW,129830.000000 pJ
reduce_mean/legacy_empty_axes_noop,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/legacy_nchw_spatial,PASS,0.050 s,0.00 MiB,0.00 MiB,3,0,0.000321 ms,92.448598 mW,29676.000000 pJ
reduce_mean/legacy_negative_axis,PASS,0.064 s,0.00 MiB,0.00 MiB,6,0,0.000553 ms,93.520796 mW,51717.000000 pJ
reduce_mean/legacy_reduce_all_keepdims_1,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/negative_axis,PASS,0.059 s,0.00 MiB,0.00 MiB,6,0,0.000553 ms,93.520796 mW,51717.000000 pJ
relu/4d,PASS,0.068 s,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
relu/after_conv,PASS,0.057 s,0.00 MiB,0.00 MiB,3,3,0.004956 ms,106.998935 mW,530286.720000 pJ
relu/after_gemm,PASS,0.064 s,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
relu/basic,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reshape/4d_to_2d_flatten,PASS,0.068 s,0.00 MiB,0.00 MiB,1,0,0.000258 ms,78.279070 mW,20196.000000 pJ
reshape/infer_dim_minus_one,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/same_rank,PASS,0.065 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/zero_copies_input_dim,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
resize/height_only,PASS,0.063 s,0.00 MiB,0.00 MiB,4,0,0.000693 ms,93.554113 mW,64833.000000 pJ
resize/nearest_2x,PASS,0.064 s,0.00 MiB,0.00 MiB,4,0,0.001173 ms,93.572890 mW,109761.000000 pJ
resize/nearest_downsample,PASS,0.062 s,0.00 MiB,0.00 MiB,2,0,0.000427 ms,79.449649 mW,33925.000000 pJ
resize/non_uniform,PASS,0.068 s,0.00 MiB,0.00 MiB,6,0,0.001753 ms,93.575014 mW,164037.000000 pJ
resize/width_only,PASS,0.070 s,0.00 MiB,0.00 MiB,2,0,0.000667 ms,79.503748 mW,53029.000000 pJ
resize/with_sizes,PASS,0.052 s,0.00 MiB,0.00 MiB,3,0,0.000797 ms,92.542033 mW,73756.000000 pJ
sigmoid/4d,PASS,0.067 s,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
sigmoid/after_gemm,PASS,0.070 s,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
sigmoid/basic,PASS,0.062 s,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
slice/2d_basic,PASS,0.049 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/after_conv,PASS,0.062 s,0.00 MiB,0.01 MiB,7,6,0.011296 ms,118.190765 mW,1335082.880000 pJ
slice/default_axes,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/large_channel_1024,PASS,0.049 s,0.01 MiB,0.00 MiB,1,0,0.002832 ms,78.144068 mW,221304.000000 pJ
slice/nchw_spatial_crop,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,0.001302 ms,78.239631 mW,101868.000000 pJ
slice/negative_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,0.000562 ms,78.298932 mW,44004.000000 pJ
slice/negative_indices,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,0.000322 ms,78.298137 mW,25212.000000 pJ
slice/step2,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,0.002042 ms,78.293830 mW,159876.000000 pJ
softmax/3d_last_axis,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/basic,PASS,0.069 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/channel_axis,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/large_dimension_1024,PASS,0.045 s,0.01 MiB,0.01 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/negative_axis,PASS,0.064 s,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
split/basic,PASS,0.066 s,0.00 MiB,0.00 MiB,1,0,0.000403 ms,78.297767 mW,31554.000000 pJ
split/equal_three_way,PASS,0.065 s,0.00 MiB,0.00 MiB,1,0,0.000564 ms,78.297872 mW,44160.000000 pJ
split/negative_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,0.001083 ms,78.288089 mW,84786.000000 pJ
split/uneven_channel_axis_4d,PASS,0.062 s,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
sub/after_gemm,PASS,0.068 s,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
sub/basic,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/broadcast_row,PASS,0.075 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/channel_broadcast_1024,PASS,0.052 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
sub/basic,PASS,0.060 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/broadcast_row,PASS,0.062 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/channel_broadcast_1024,PASS,0.057 s,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
sub/constant_lhs_broadcast,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,0.000322 ms,78.223602 mW,25188.000000 pJ
sub/leading_dimension_broadcast,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/leading_dimension_broadcast,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
1 Operation Result Compile Host mem Cores mem Cores Xbars Latency Power Energy
2 add/after_gemm PASS 0.141 s 0.072 s 0.01 MiB 0.01 MiB 5 4 0.007784 ms 104.703618 mW 815012.960000 pJ
3 add/basic PASS 0.114 s 0.049 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
4 add/broadcast_row PASS 0.110 s 0.048 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
5 add/channel_broadcast_1024 PASS 0.105 s 0.051 s 0.02 MiB 0.01 MiB 1 0 0.006913 ms 78.118038 mW 540030.000000 pJ
6 add/leading_dimension_broadcast PASS 0.137 s 0.051 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
7 concat/channel_axis PASS 0.127 s 0.051 s 0.00 MiB 0.00 MiB 1 0 0.000457 ms 78.157549 mW 35718.000000 pJ
8 concat/negative_axis PASS 0.102 s 0.061 s 0.00 MiB 0.00 MiB 1 0 0.001043 ms 78.092042 mW 81450.000000 pJ
9 concat/three_inputs_channel_axis PASS 0.127 s 0.054 s 0.00 MiB 0.00 MiB 1 0 0.000644 ms 78.149068 mW 50328.000000 pJ
10 conv/batch_2 PASS 0.102 s 0.059 s 0.00 MiB 0.00 MiB 2 2 0.013694 ms 82.623885 mW 1131451.480000 pJ
11 conv/batch_4_pointwise PASS 0.110 s 0.056 s 0.00 MiB 0.01 MiB 5 4 0.003932 ms 116.078576 mW 456420.960000 pJ
12 conv/depthwise_1024_channels PASS 0.167 s 0.081 s 0.19 MiB 0.38 MiB 129 128 0.220751 ms 178.454307 mW 39393966.720000 pJ
13 conv/depthwise_grouped PASS 0.109 s 0.059 s 0.01 MiB 0.00 MiB 5 4 0.006024 ms 108.326521 mW 652558.960000 pJ
14 conv/dilated_3x3 PASS 0.143 s 0.059 s 0.00 MiB 0.00 MiB 3 3 0.004045 ms 110.234541 mW 445898.720000 pJ
15 conv/dynamic PASS 0.107 s 0.059 s 0.00 MiB 0.00 MiB 5 0 0.001835 ms 92.281199 mW 169336.000000 pJ
16 conv/explicit_padding PASS 0.139 s 0.058 s 0.00 MiB 0.00 MiB 4 4 0.004327 ms 115.794768 mW 501043.960000 pJ
17 conv/grouped_many_groups PASS 0.616 s 0.505 s 0.05 MiB 0.09 MiB 65 64 0.181845 ms 142.210104 mW 25860196.360000 pJ
18 conv/grouped_two_groups PASS 0.145 s 0.061 s 0.00 MiB 0.00 MiB 3 2 0.005360 ms 101.459418 mW 543822.480000 pJ
19 conv/huge_pointwise_1024 PASS 0.749 s 0.643 s 0.01 MiB 0.01 MiB 1 64 0.028261 ms 133.488743 mW 3772525.360000 pJ
20 conv/huge_pointwise_1024_dynamic PASS 0.097 s 0.081 s 8.04 MiB 12.61 MiB 168 0 2.627964 ms 169.518697 mW 445489032.000000 pJ
21 conv/kernel_3x3 PASS 0.155 s 0.056 s 0.00 MiB 0.00 MiB 3 3 0.003091 ms 115.862414 mW 358130.720000 pJ
22 conv/kernel_equals_input_spatial PASS 0.156 s 0.060 s 0.00 MiB 0.00 MiB 1 2 0.008443 ms 83.863849 mW 708062.480000 pJ
23 conv/large_input_channels_1x1 PASS 0.160 s 0.088 s 0.01 MiB 0.01 MiB 1 8 0.017167 ms 89.416900 mW 1535019.920000 pJ
24 conv/large_output_channels_1x1 PASS 0.141 s 0.087 s 0.00 MiB 0.01 MiB 1 8 0.004964 ms 117.628106 mW 583905.920000 pJ
25 conv/large_spatial PASS 0.141 s 0.055 s 0.00 MiB 0.01 MiB 6 6 0.004096 ms 129.015000 mW 528445.440000 pJ
26 conv/multi_channel PASS 0.143 s 0.056 s 0.00 MiB 0.00 MiB 3 3 0.005148 ms 106.453520 mW 548022.720000 pJ
27 conv/non_square_kernel_1x3 PASS 0.127 s 0.056 s 0.00 MiB 0.00 MiB 5 5 0.004029 ms 123.600943 mW 497988.200000 pJ
28 conv/non_square_kernel_3x1 PASS 0.085 s 0.058 s 0.00 MiB 0.00 MiB 3 3 0.005526 ms 105.464843 mW 582798.720000 pJ
29 conv/non_uniform_stride PASS 0.120 s 0.062 s 0.00 MiB 0.00 MiB 4 4 0.005808 ms 110.081433 mW 639352.960000 pJ
30 conv/pointwise_1x1 PASS 0.139 s 0.057 s 0.00 MiB 0.00 MiB 4 4 0.004539 ms 114.835858 mW 521239.960000 pJ
31 conv/pointwise_tiled_chain PASS 0.943 s 0.771 s 0.01 MiB 0.02 MiB 2 80 0.084437 ms 102.289307 mW 8637002.200000 pJ
32 conv/real_asymmetric_padding PASS 0.115 s 0.055 s 0.00 MiB 0.00 MiB 4 4 0.005232 ms 111.870214 mW 585304.960000 pJ
33 conv/relu_conv_store PASS 0.107 s 0.076 s 0.05 MiB 0.02 MiB 0.08 MiB 0.10 MiB 32 32 0.062978 ms 0.064390 ms 246.649827 mW 243.916397 mW 15533512.800000 pJ 15705776.800000 pJ
34 conv/same_lower_3x3 PASS 0.094 s 0.057 s 0.00 MiB 0.00 MiB 5 5 0.004700 ms 119.232170 mW 560391.200000 pJ
35 conv/same_padding_3x3 PASS 0.126 s 0.060 s 0.00 MiB 0.00 MiB 5 5 0.004700 ms 119.232170 mW 560391.200000 pJ
36 conv/simple PASS 0.125 s 0.055 s 0.00 MiB 0.00 MiB 2 2 0.003148 ms 94.665972 mW 298008.480000 pJ
37 conv/stride_2 PASS 0.146 s 0.053 s 0.00 MiB 0.00 MiB 2 2 0.002827 ms 96.393873 mW 272505.480000 pJ
38 conv/with_bias_3x3 PASS 0.121 s 0.055 s 0.00 MiB 0.00 MiB 3 3 0.004898 ms 107.176546 mW 524950.720000 pJ
39 conv/with_constant PASS 0.106 s 0.073 s 0.00 MiB 0.00 MiB 3 3 0.004273 ms 109.362677 mW 467306.720000 pJ
40 conv/without_kernel_shape_attr PASS 0.105 s 0.057 s 0.00 MiB 0.00 MiB 3 3 0.003091 ms 115.862414 mW 358130.720000 pJ
41 conv/yolo11n_stem conv/yolo11n_depthwise_head PASS 3.091 s 0.509 s 29.20 MiB 4.82 MiB 31.38 MiB 15.92 MiB 168 160 488 720 9.799213 ms 4.105780 ms 361.075203 mW 492.826315 mW 3538252825.000010 pJ 2023436428.000010 pJ
42 div/after_gemm conv/yolo11n_heavy PASS 0.130 s 0.488 s 0.01 MiB 4.82 MiB 0.01 MiB 20.66 MiB 5 160 4 800 0.007784 ms 6.275385 ms 104.703618 mW 418.028199 mW 815012.960000 pJ 2623287892.000010 pJ
43 div/basic conv/yolo11n_stem PASS 0.116 s 1.730 s 0.00 MiB 12.86 MiB 0.00 MiB 31.38 MiB 1 168 0 488 0.000323 ms 9.799204 ms 78.222910 mW 361.075380 mW 25266.000000 pJ 3538251304.000010 pJ
44 div/channel_broadcast_1024 div/after_gemm PASS 0.121 s 0.059 s 0.02 MiB 0.01 MiB 0.01 MiB 1 5 0 4 0.006913 ms 0.007784 ms 78.118038 mW 104.703618 mW 540030.000000 pJ 815012.960000 pJ
45 div/leading_dimension_broadcast div/basic PASS 0.095 s 0.048 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
46 div/runtime_scalar_rhs div/channel_broadcast_1024 PASS 0.126 s 0.051 s 0.02 MiB 0.01 MiB 1 0 0.006913 ms 78.118038 mW 540030.000000 pJ
47 div/scalar_constant div/leading_dimension_broadcast PASS 0.069 s 0.063 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
48 gather/3d_input_axis1 div/runtime_scalar_rhs PASS 0.121 s 0.057 s 0.00 MiB 0.02 MiB 0.00 MiB 0.01 MiB 1 0 0.000589 ms 0.006913 ms 78.081494 mW 78.118038 mW 45990.000000 pJ 540030.000000 pJ
49 gather/axis0_matrix_indices div/scalar_constant PASS 0.088 s 0.049 s 0.00 MiB 0.00 MiB 1 0 0.000697 ms 0.000323 ms 78.068867 mW 78.222910 mW 54414.000000 pJ 25266.000000 pJ
50 gather/axis1 gather/3d_input_axis1 PASS 0.123 s 0.050 s 0.00 MiB 0.00 MiB 1 0 0.000801 ms 0.000589 ms 78.059925 mW 78.081494 mW 62526.000000 pJ 45990.000000 pJ
51 gather/negative_axis gather/axis0_matrix_indices PASS 0.087 s 0.050 s 0.00 MiB 0.00 MiB 1 0 0.001437 ms 0.000697 ms 78.033403 mW 78.068867 mW 112134.000000 pJ 54414.000000 pJ
52 gather/negative_indices gather/axis1 PASS 0.115 s 0.053 s 0.00 MiB 0.00 MiB 1 0 0.000376 ms 0.000801 ms 78.127660 mW 78.059925 mW 29376.000000 pJ 62526.000000 pJ
53 gemm/alpha_beta gather/negative_axis PASS 0.121 s 0.053 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.007456 ms 0.001437 ms 105.272125 mW 78.033403 mW 784908.960000 pJ 112134.000000 pJ
54 gemm/bias_rank2_broadcast gather/negative_indices PASS 0.127 s 0.052 s 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.007072 ms 0.000376 ms 105.979208 mW 78.127660 mW 749484.960000 pJ 29376.000000 pJ
55 gemm/dynamic gemm/alpha_beta PASS 0.084 s 0.056 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 5 0 4 0.002421 ms 0.007456 ms 91.480793 mW 105.272125 mW 221475.000000 pJ 784908.960000 pJ
56 gemm/dynamic_alpha gemm/bias_rank2_broadcast PASS 0.104 s 0.056 s 0.00 MiB 0.00 MiB 0.01 MiB 5 0 4 0.003262 ms 0.007072 ms 91.415696 mW 105.979208 mW 298198.000000 pJ 749484.960000 pJ
57 gemm/dynamic_beta gemm/dynamic PASS 0.110 s 0.054 s 0.00 MiB 0.00 MiB 5 0 0.004365 ms 0.002421 ms 91.316151 mW 91.480793 mW 398595.000000 pJ 221475.000000 pJ
58 gemm/dynamic_bias gemm/dynamic_alpha PASS 0.092 s 0.056 s 0.00 MiB 0.00 MiB 5 0 0.002665 ms 0.003262 ms 91.445779 mW 91.415696 mW 243703.000000 pJ 298198.000000 pJ
59 gemm/dynamic_bias_alpha_beta gemm/dynamic_beta PASS 0.089 s 0.059 s 0.00 MiB 0.00 MiB 5 0 0.005629 ms 0.004365 ms 91.279268 mW 91.316151 mW 513811.000000 pJ 398595.000000 pJ
60 gemm/dynamic_transB gemm/dynamic_bias PASS 0.077 s 0.056 s 0.00 MiB 0.00 MiB 5 0 0.001301 ms 0.002665 ms 91.378171 mW 91.445779 mW 118883.000000 pJ 243703.000000 pJ
61 gemm/huge_1024 gemm/dynamic_bias_alpha_beta PASS 0.219 s 0.053 s 0.01 MiB 0.00 MiB 0.10 MiB 0.00 MiB 73 5 64 0 0.017522 ms 0.005629 ms 215.037402 mW 91.279268 mW 3767885.360000 pJ 513811.000000 pJ
62 gemm/large gemm/dynamic_transB PASS 0.097 s 0.054 s 0.02 MiB 0.00 MiB 0.03 MiB 0.00 MiB 17 5 16 0 0.011229 ms 0.001301 ms 140.152181 mW 91.378171 mW 1573768.840000 pJ 118883.000000 pJ
63 gemm/large_k_small_n gemm/huge_1024 PASS 0.106 s 0.157 s 0.01 MiB 0.01 MiB 0.10 MiB 9 73 8 64 0.004748 ms 0.017522 ms 133.481449 mW 215.037402 mW 633769.920000 pJ 3767885.360000 pJ
64 gemm/non_square gemm/large PASS 0.102 s 0.067 s 0.00 MiB 0.02 MiB 0.01 MiB 0.03 MiB 5 17 4 16 0.003527 ms 0.011229 ms 118.958310 mW 140.152181 mW 419565.960000 pJ 1573768.840000 pJ
65 gemm/scalar_bias gemm/large_k_small_n PASS 0.111 s 0.097 s 0.00 MiB 0.01 MiB 0.01 MiB 5 9 4 8 0.007072 ms 0.004748 ms 105.979208 mW 133.481449 mW 749484.960000 pJ 633769.920000 pJ
66 gemm/simple gemm/non_square PASS 0.135 s 0.060 s 0.03 MiB 0.00 MiB 0.08 MiB 0.01 MiB 42 5 40 4 0.021640 ms 0.003527 ms 151.774196 mW 118.958310 mW 3284393.600000 pJ 419565.960000 pJ
67 gemm/small gemm/scalar_bias PASS 0.074 s 0.054 s 0.00 MiB 0.00 MiB 0.01 MiB 2 5 2 4 0.004420 ms 0.007072 ms 90.144000 mW 105.979208 mW 398436.480000 pJ 749484.960000 pJ
68 gemm/small_k_large_n gemm/simple PASS 0.129 s 0.071 s 0.01 MiB 0.03 MiB 0.02 MiB 0.08 MiB 17 42 8 40 0.007962 ms 0.021640 ms 131.005014 mW 151.774196 mW 1043061.920000 pJ 3284393.600000 pJ
69 gemm/transA gemm/small PASS 0.089 s 0.052 s 0.00 MiB 0.01 MiB 0.00 MiB 5 2 4 2 0.005762 ms 0.004420 ms 109.140743 mW 90.144000 mW 628868.960000 pJ 398436.480000 pJ
70 gemm/transA_transB gemm/small_k_large_n PASS 0.115 s 0.089 s 0.00 MiB 0.01 MiB 0.01 MiB 0.02 MiB 5 17 4 8 0.005762 ms 0.007962 ms 109.140743 mW 131.005014 mW 628868.960000 pJ 1043061.920000 pJ
71 gemm/transB gemm/transA PASS 0.068 s 0.057 s 0.00 MiB 0.01 MiB 5 4 0.003527 ms 0.005762 ms 118.958310 mW 109.140743 mW 419565.960000 pJ 628868.960000 pJ
72 gemm/transB_with_bias gemm/transA_transB PASS 0.069 s 0.053 s 0.01 MiB 0.00 MiB 0.01 MiB 5 4 0.005046 ms 0.005762 ms 110.546762 mW 109.140743 mW 557818.960000 pJ 628868.960000 pJ
73 gemm/with_bias gemm/transB PASS 0.113 s 0.062 s 0.01 MiB 0.00 MiB 0.01 MiB 5 4 0.005562 ms 0.003527 ms 108.767882 mW 118.958310 mW 604966.960000 pJ 419565.960000 pJ
74 gemv/constant gemm/transB_with_bias PASS 0.112 s 0.057 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 0 5 0 4 0.000000 ms 0.005046 ms 2.000000 mW 110.546762 mW 0.000000 pJ 557818.960000 pJ
75 gemv/simple gemm/with_bias PASS 0.136 s 0.056 s 0.00 MiB 0.01 MiB 0.01 MiB 6 5 4 0.005160 ms 0.005562 ms 111.150380 mW 108.767882 mW 573535.960000 pJ 604966.960000 pJ
76 gemv/with_heterogeneous_constant gemv/constant PASS 0.138 s 0.051 s 0.00 MiB 0.01 MiB 0.00 MiB 6 0 4 0 0.005549 ms 0.000000 ms 109.816536 mW 2.000000 mW 609371.960000 pJ 0.000000 pJ
77 gemv/with_homogeneous_constant gemv/simple PASS 0.140 s 0.066 s 0.00 MiB 0.01 MiB 6 4 0.005549 ms 0.005160 ms 109.816536 mW 111.150380 mW 609371.960000 pJ 573535.960000 pJ
78 gemv/with_scalar_constant gemv/with_heterogeneous_constant PASS 0.124 s 0.066 s 0.00 MiB 0.01 MiB 6 4 0.005549 ms 109.816536 mW 609371.960000 pJ
79 matmul/basic gemv/with_homogeneous_constant PASS 0.081 s 0.063 s 0.00 MiB 0.00 MiB 0.01 MiB 2 6 2 4 0.004420 ms 0.005549 ms 90.144000 mW 109.816536 mW 398436.480000 pJ 609371.960000 pJ
80 matmul/batched_3d gemv/with_scalar_constant PASS 0.133 s 0.064 s 0.00 MiB 0.01 MiB 5 6 4 0.005958 ms 0.005549 ms 108.588949 mW 109.816536 mW 646972.960000 pJ 609371.960000 pJ
81 matmul/batched_3d_dynamic matmul/basic PASS 0.105 s 0.064 s 0.00 MiB 0.00 MiB 9 2 0 2 0.003525 ms 0.004420 ms 92.330213 mW 90.144000 mW 325464.000000 pJ 398436.480000 pJ
82 matmul/batched_left_constant matmul/batched_3d PASS 0.136 s 0.058 s 0.00 MiB 0.02 MiB 0.01 MiB 9 5 8 4 0.008822 ms 0.005958 ms 114.385164 mW 108.588949 mW 1009105.920000 pJ 646972.960000 pJ
83 matmul/batched_lhs_broadcast matmul/batched_3d_dynamic PASS 0.133 s 0.053 s 0.00 MiB 0.01 MiB 0.00 MiB 5 4 4 0 0.005681 ms 0.001822 ms 109.389361 mW 92.192645 mW 621440.960000 pJ 167975.000000 pJ
84 matmul/batched_rhs_broadcast matmul/batched_left_constant PASS 0.134 s 0.058 s 0.00 MiB 0.01 MiB 0.02 MiB 5 9 4 8 0.005958 ms 0.008822 ms 108.588949 mW 114.385164 mW 646972.960000 pJ 1009105.920000 pJ
85 matmul/dynamic matmul/batched_lhs_broadcast PASS 0.093 s 0.056 s 0.00 MiB 0.00 MiB 0.01 MiB 5 0 4 0.001621 ms 0.005681 ms 91.421962 mW 109.389361 mW 148195.000000 pJ 621440.960000 pJ
86 matmul/huge_1024 matmul/batched_rhs_broadcast PASS 0.277 s 0.059 s 0.01 MiB 0.00 MiB 0.10 MiB 0.01 MiB 73 5 64 4 0.017522 ms 0.005958 ms 215.037402 mW 108.588949 mW 3767885.360000 pJ 646972.960000 pJ
87 matmul/left_constant matmul/dynamic PASS 0.123 s 0.054 s 0.00 MiB 0.01 MiB 0.00 MiB 5 4 0 0.005853 ms 0.001621 ms 108.861944 mW 91.421962 mW 637168.960000 pJ 148195.000000 pJ
88 matmul/matrix_vector matmul/huge_1024 PASS 0.150 s 0.142 s 0.52 MiB 0.01 MiB 0.78 MiB 0.10 MiB 168 73 173 64 0.384660 ms 0.017522 ms 202.131271 mW 215.037402 mW 77751814.880000 pJ 3767885.360000 pJ
89 matmul/vector_matrix matmul/left_constant PASS 0.186 s 0.064 s 0.01 MiB 0.00 MiB 0.01 MiB 9 5 8 4 0.007409 ms 0.005853 ms 118.680243 mW 108.861944 mW 879301.920000 pJ 637168.960000 pJ
90 mul/after_conv matmul/matrix_vector PASS 0.127 s 0.097 s 0.00 MiB 0.52 MiB 0.00 MiB 0.78 MiB 4 168 3 173 0.005453 ms 0.384660 ms 107.639046 mW 202.131271 mW 586955.720000 pJ 77751814.880000 pJ
91 mul/basic matmul/vector_matrix PASS 0.070 s 0.086 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 1 9 0 8 0.000323 ms 0.007409 ms 78.222910 mW 118.680243 mW 25266.000000 pJ 879301.920000 pJ
92 mul/channel_broadcast_1024 matmul/yolo_attention PASS 0.065 s 0.417 s 0.02 MiB 1.02 MiB 0.01 MiB 43.44 MiB 1 168 0 0.006913 ms 8.151445 ms 78.118038 mW 170.003707 mW 540030.000000 pJ 1385775865.000000 pJ
93 mul/leading_dimension_broadcast mul/after_conv PASS 0.108 s 0.060 s 0.00 MiB 0.00 MiB 1 4 0 3 0.000323 ms 0.005453 ms 78.222910 mW 107.639046 mW 25266.000000 pJ 586955.720000 pJ
94 mul/scalar_constant mul/basic PASS 0.082 s 0.051 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
95 pool/avg_basic mul/channel_broadcast_1024 PASS 0.070 s 0.060 s 0.00 MiB 0.02 MiB 0.00 MiB 0.01 MiB 1 0 0.011939 ms 0.006913 ms 78.022112 mW 78.118038 mW 931506.000000 pJ 540030.000000 pJ
96 pool/avg_ceil_mode mul/leading_dimension_broadcast PASS 0.107 s 0.058 s 0.00 MiB 0.00 MiB 1 0 0.004359 ms 0.000323 ms 78.033035 mW 78.222910 mW 340146.000000 pJ 25266.000000 pJ
97 pool/avg_explicit_padding mul/scalar_constant PASS 0.111 s 0.053 s 0.00 MiB 0.00 MiB 1 0 0.008822 ms 0.000323 ms 78.027205 mW 78.222910 mW 688356.000000 pJ 25266.000000 pJ
98 pool/avg_include_pad pool/avg_basic PASS 0.075 s 0.057 s 0.00 MiB 0.00 MiB 1 0 0.008506 ms 0.011939 ms 78.016929 mW 78.022112 mW 663612.000000 pJ 931506.000000 pJ
99 pool/avg_large_channels pool/avg_ceil_mode PASS 0.064 s 0.054 s 0.04 MiB 0.00 MiB 0.02 MiB 0.00 MiB 1 0 0.178249 ms 0.004359 ms 78.280327 mW 78.033035 mW 13953390.000000 pJ 340146.000000 pJ
100 pool/avg_non_uniform_stride pool/avg_explicit_padding PASS 0.068 s 0.062 s 0.00 MiB 0.00 MiB 1 0 0.014513 ms 0.008822 ms 78.016537 mW 78.027205 mW 1132254.000000 pJ 688356.000000 pJ
101 pool/avg_real_asymmetric_padding pool/avg_include_pad PASS 0.064 s 0.055 s 0.00 MiB 0.00 MiB 1 0 0.025206 ms 0.008506 ms 78.024756 mW 78.016929 mW 1966692.000000 pJ 663612.000000 pJ
102 pool/max_after_conv pool/avg_large_channels PASS 0.070 s 0.067 s 0.00 MiB 0.04 MiB 0.00 MiB 0.02 MiB 6 1 4 0 0.006452 ms 0.178249 ms 96.374606 mW 78.280327 mW 621808.960000 pJ 13953390.000000 pJ
103 pool/avg_non_uniform_stride PASS 0.060 s 0.00 MiB 0.00 MiB 1 0 0.014513 ms 78.016537 mW 1132254.000000 pJ
104 pool/avg_real_asymmetric_padding PASS 0.071 s 0.00 MiB 0.00 MiB 1 0 0.025206 ms 78.024756 mW 1966692.000000 pJ
105 pool/max_after_conv PASS 0.066 s 0.00 MiB 0.00 MiB 6 4 0.006452 ms 96.374606 mW 621808.960000 pJ
106 pool/max_basic PASS 0.063 s 0.00 MiB 0.00 MiB 3 0 0.001634 ms 92.132191 mW 150544.000000 pJ
107 pool/max_ceil_mode PASS 0.065 s 0.078 s 0.00 MiB 0.00 MiB 2 0 0.001297 ms 79.111025 mW 102607.000000 pJ
108 pool/max_global_style_kernel_equals_input PASS 0.089 s 0.067 s 0.00 MiB 0.00 MiB 1 0 0.004366 ms 78.010994 mW 340596.000000 pJ
109 pool/max_non_square_kernel PASS 0.103 s 0.073 s 0.00 MiB 0.00 MiB 4 0 0.003409 ms 93.253447 mW 317901.000000 pJ
110 pool/max_real_asymmetric_padding PASS 0.088 s 0.064 s 0.00 MiB 0.00 MiB 4 0 0.003078 ms 93.124756 mW 286638.000000 pJ
111 pool/max_same_upper PASS 0.065 s 0.063 s 0.00 MiB 0.00 MiB 3 0 0.003024 ms 92.095238 mW 278496.000000 pJ
112 pool/max_stride2_multichannel PASS 0.086 s 0.066 s 0.00 MiB 0.00 MiB 3 0 0.004012 ms 92.269192 mW 370184.000000 pJ
113 reduce_mean/4d_spatial PASS 0.061 s 0.078 s 0.00 MiB 0.00 MiB 3 0 0.000321 ms 92.448598 mW 29676.000000 pJ
114 reduce_mean/4d_spatial_keepdims_0 PASS 0.067 s 0.066 s 0.00 MiB 0.00 MiB 4 0 0.000655 ms 94.352672 mW 61801.000000 pJ
115 reduce_mean/after_conv PASS 0.115 s 0.068 s 0.00 MiB 0.00 MiB 5 3 0.005342 ms 106.951089 mW 571332.720000 pJ
116 reduce_mean/all_axes_keepdims_0 PASS 0.103 s 0.067 s 0.00 MiB 0.00 MiB 2 0 0.000391 ms 79.237852 mW 30982.000000 pJ
117 reduce_mean/all_axes_keepdims_1 PASS 0.086 s 0.056 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms 78.217195 mW 17286.000000 pJ
118 reduce_mean/basic PASS 0.099 s 0.052 s 0.00 MiB 0.00 MiB 4 0 0.000373 ms 93.514745 mW 34881.000000 pJ
119 reduce_mean/channel_axis_nchw PASS 0.078 s 0.054 s 0.03 MiB 0.02 MiB 4 0 0.164926 ms 93.596631 mW 15436518.000000 pJ
120 reduce_mean/keepdims_0 PASS 0.073 s 0.054 s 0.00 MiB 0.00 MiB 5 0 0.000748 ms 91.401070 mW 68368.000000 pJ
121 reduce_mean/large_dimension_1024 PASS 0.115 s 0.056 s 0.01 MiB 0.00 MiB 1 0 0.002785 ms 78.017235 mW 217278.000000 pJ
122 reduce_mean/legacy_axes_1_2_keepdims_1 PASS 0.074 s 0.064 s 0.00 MiB 0.00 MiB 2 0 0.000271 ms 79.354244 mW 21505.000000 pJ
123 reduce_mean/legacy_axis1_keepdims_0 PASS 0.111 s 0.071 s 0.00 MiB 0.00 MiB 9 0 0.001986 ms 92.501511 mW 183708.000000 pJ
124 reduce_mean/legacy_axis1_keepdims_1 PASS 0.086 s 0.065 s 0.00 MiB 0.00 MiB 8 0 0.001373 ms 94.559359 mW 129830.000000 pJ
125 reduce_mean/legacy_empty_axes_noop PASS 0.115 s 0.053 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms 78.217195 mW 17286.000000 pJ
126 reduce_mean/legacy_nchw_spatial PASS 0.090 s 0.050 s 0.00 MiB 0.00 MiB 3 0 0.000321 ms 92.448598 mW 29676.000000 pJ
127 reduce_mean/legacy_negative_axis PASS 0.110 s 0.064 s 0.00 MiB 0.00 MiB 6 0 0.000553 ms 93.520796 mW 51717.000000 pJ
128 reduce_mean/legacy_reduce_all_keepdims_1 PASS 0.107 s 0.054 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms 78.217195 mW 17286.000000 pJ
129 reduce_mean/negative_axis PASS 0.120 s 0.059 s 0.00 MiB 0.00 MiB 6 0 0.000553 ms 93.520796 mW 51717.000000 pJ
130 relu/4d PASS 0.116 s 0.068 s 0.00 MiB 0.00 MiB 1 0 0.000521 ms 78.184261 mW 40734.000000 pJ
131 relu/after_conv PASS 0.078 s 0.057 s 0.00 MiB 0.00 MiB 3 3 0.004956 ms 106.998935 mW 530286.720000 pJ
132 relu/after_gemm PASS 0.077 s 0.064 s 0.01 MiB 0.01 MiB 5 4 0.007513 ms 105.158653 mW 790056.960000 pJ
133 relu/basic PASS 0.066 s 0.056 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms 78.217195 mW 17286.000000 pJ
134 reshape/4d_to_2d_flatten PASS 0.098 s 0.068 s 0.00 MiB 0.00 MiB 1 0 0.000258 ms 78.279070 mW 20196.000000 pJ
135 reshape/infer_dim_minus_one PASS 0.105 s 0.059 s 0.00 MiB 0.00 MiB 1 0 0.000162 ms 78.296296 mW 12684.000000 pJ
136 reshape/same_rank PASS 0.057 s 0.065 s 0.00 MiB 0.00 MiB 1 0 0.000162 ms 78.296296 mW 12684.000000 pJ
137 reshape/zero_copies_input_dim PASS 0.090 s 0.057 s 0.00 MiB 0.00 MiB 1 0 0.000162 ms 78.296296 mW 12684.000000 pJ
138 resize/height_only PASS 0.104 s 0.063 s 0.00 MiB 0.00 MiB 1 4 0 0.000795 ms 0.000693 ms 78.060377 mW 93.554113 mW 62058.000000 pJ 64833.000000 pJ
139 resize/nearest_2x PASS 0.104 s 0.064 s 0.00 MiB 0.00 MiB 1 4 0 0.001422 ms 0.001173 ms 78.033755 mW 93.572890 mW 110964.000000 pJ 109761.000000 pJ
140 resize/nearest_downsample PASS 0.059 s 0.062 s 0.00 MiB 0.00 MiB 1 2 0 0.000481 ms 0.000427 ms 78.099792 mW 79.449649 mW 37566.000000 pJ 33925.000000 pJ
141 resize/non_uniform PASS 0.063 s 0.068 s 0.00 MiB 0.00 MiB 1 6 0 0.002108 ms 0.001753 ms 78.034156 mW 93.575014 mW 164496.000000 pJ 164037.000000 pJ
142 resize/width_only PASS 0.068 s 0.070 s 0.00 MiB 0.00 MiB 1 2 0 0.000792 ms 0.000667 ms 78.060606 mW 79.503748 mW 61824.000000 pJ 53029.000000 pJ
143 resize/with_sizes PASS 0.056 s 0.052 s 0.00 MiB 0.00 MiB 1 3 0 0.000951 ms 0.000797 ms 78.050473 mW 92.542033 mW 74226.000000 pJ 73756.000000 pJ
144 sigmoid/4d PASS 0.104 s 0.067 s 0.00 MiB 0.00 MiB 1 0 0.000521 ms 78.184261 mW 40734.000000 pJ
145 sigmoid/after_gemm PASS 0.118 s 0.070 s 0.01 MiB 0.01 MiB 5 4 0.007513 ms 105.158653 mW 790056.960000 pJ
146 sigmoid/basic PASS 0.083 s 0.062 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms 78.217195 mW 17286.000000 pJ
147 slice/2d_basic PASS 0.067 s 0.049 s 0.00 MiB 0.00 MiB 1 0 0.000242 ms 78.297521 mW 18948.000000 pJ
148 slice/after_conv PASS 0.111 s 0.062 s 0.00 MiB 0.01 MiB 7 6 0.011296 ms 118.190765 mW 1335082.880000 pJ
149 slice/default_axes PASS 0.065 s 0.056 s 0.00 MiB 0.00 MiB 1 0 0.000242 ms 78.297521 mW 18948.000000 pJ
150 slice/large_channel_1024 PASS 0.060 s 0.049 s 0.01 MiB 0.00 MiB 1 0 0.002832 ms 78.144068 mW 221304.000000 pJ
151 slice/nchw_spatial_crop PASS 0.067 s 0.063 s 0.00 MiB 0.00 MiB 1 0 0.001302 ms 78.239631 mW 101868.000000 pJ
152 slice/negative_axis PASS 0.098 s 0.058 s 0.00 MiB 0.00 MiB 1 0 0.000562 ms 78.298932 mW 44004.000000 pJ
153 slice/negative_indices PASS 0.106 s 0.059 s 0.00 MiB 0.00 MiB 1 0 0.000322 ms 78.298137 mW 25212.000000 pJ
154 slice/step2 PASS 0.068 s 0.054 s 0.00 MiB 0.00 MiB 1 0 0.002042 ms 78.293830 mW 159876.000000 pJ
155 softmax/3d_last_axis PASS 0.072 s 0.059 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED UNSUPPORTED UNSUPPORTED
156 softmax/basic PASS 0.088 s 0.069 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED UNSUPPORTED UNSUPPORTED
157 softmax/channel_axis PASS 0.110 s 0.061 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED UNSUPPORTED UNSUPPORTED
158 softmax/large_dimension_1024 PASS 0.104 s 0.045 s 0.01 MiB 0.01 MiB 1 0 UNSUPPORTED UNSUPPORTED UNSUPPORTED
159 softmax/negative_axis PASS 0.118 s 0.064 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED UNSUPPORTED UNSUPPORTED
160 split/basic PASS 0.077 s 0.066 s 0.00 MiB 0.00 MiB 1 0 0.000403 ms 78.297767 mW 31554.000000 pJ
161 split/equal_three_way PASS 0.107 s 0.065 s 0.00 MiB 0.00 MiB 1 0 0.000564 ms 78.297872 mW 44160.000000 pJ
162 split/negative_axis PASS 0.111 s 0.058 s 0.00 MiB 0.00 MiB 1 0 0.001083 ms 78.288089 mW 84786.000000 pJ
163 split/uneven_channel_axis_4d PASS 0.061 s 0.062 s 0.00 MiB 0.00 MiB 1 0 0.000242 ms 78.297521 mW 18948.000000 pJ
164 sub/after_gemm PASS 0.068 s 0.01 MiB 0.01 MiB 5 4 0.007784 ms 104.703618 mW 815012.960000 pJ
165 sub/basic PASS 0.063 s 0.060 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
166 sub/broadcast_row PASS 0.075 s 0.062 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
167 sub/channel_broadcast_1024 PASS 0.052 s 0.057 s 0.02 MiB 0.01 MiB 1 0 0.006913 ms 78.118038 mW 540030.000000 pJ
168 sub/constant_lhs_broadcast PASS 0.057 s 0.00 MiB 0.00 MiB 1 0 0.000322 ms 78.223602 mW 25188.000000 pJ
169 sub/leading_dimension_broadcast PASS 0.053 s 0.058 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
@@ -0,0 +1,182 @@
#!/usr/bin/env python3
"""Save exact attention-tap arrays and quantify the MatMul error sources."""
import argparse
import hashlib
import json
import sys
from pathlib import Path
import numpy as np
import onnx
from onnx import numpy_helper
REPO_ROOT = Path(__file__).resolve().parents[2]
sys.path.insert(0, str(REPO_ROOT / "validation"))
from raptor_validation.onnx_utils import onnx_io # noqa: E402
from raptor_validation.validate_one import ( # noqa: E402
parse_pim_simulator_outputs,
sanitize_output_name,
)
TAP_NAMES = {
"v": "/model.10/m/m.0/attn/Split_output_2",
"raw": "/model.10/m/m.0/attn/MatMul_output_0",
"scaled": "/model.10/m/m.0/attn/Mul_output_0",
"rhs": "/model.10/m/m.0/attn/Transpose_1_output_0",
"c": "/model.10/m/m.0/attn/MatMul_1_output_0",
}
ABSOLUTE_TOLERANCE = 1e-3
RELATIVE_TOLERANCE = 1e-5
def sha256(path):
digest = hashlib.sha256()
with Path(path).open("rb") as stream:
for block in iter(lambda: stream.read(1 << 20), b""):
digest.update(block)
return digest.hexdigest()
def metric(actual, expected):
difference = np.abs(actual.astype(np.float64) - expected.astype(np.float64))
allowed = ABSOLUTE_TOLERANCE + RELATIVE_TOLERANCE * np.abs(expected.astype(np.float64))
return {
"max_abs": float(np.max(difference)),
"mean_abs": float(np.mean(difference)),
"rms": float(np.sqrt(np.mean(np.square(difference)))),
"elements_over_validator_limit": int(np.count_nonzero(difference > allowed)),
}
def f32_matmul(lhs, rhs):
return np.matmul(lhs.astype(np.float32), rhs.astype(np.float32)).astype(np.float32)
def f64_matmul(lhs, rhs):
return np.matmul(lhs.astype(np.float64), rhs.astype(np.float64)).astype(np.float64)
def load_constant(model, output_name):
for initializer in model.graph.initializer:
if initializer.name == output_name:
return float(numpy_helper.to_array(initializer).reshape(-1)[0])
for node in model.graph.node:
if output_name not in node.output:
continue
for attribute in node.attribute:
if attribute.name == "value" and attribute.HasField("t"):
return float(numpy_helper.to_array(attribute.t).reshape(-1)[0])
raise ValueError(f"could not find ONNX Constant producing {output_name}")
def load_arrays(workspace, model_path):
model = onnx.load(model_path)
descriptors = onnx_io(model_path)
output_descriptors = {name: (index, dtype, shape) for index, name, dtype, shape in descriptors[1]}
missing = sorted(set(TAP_NAMES.values()) - set(output_descriptors))
if missing:
raise ValueError("tap model is missing outputs: " + ", ".join(missing))
sim_arrays = parse_pim_simulator_outputs(
workspace / "simulation" / "out.bin", descriptors[1]
)
reference = {}
simulated = {}
input_files = {}
for key, name in TAP_NAMES.items():
index, _dtype, shape = output_descriptors[name]
csv_path = workspace / "outputs" / f"output{index}_{sanitize_output_name(name)}.csv"
reference[key] = np.loadtxt(csv_path, delimiter=",", dtype=np.float32).reshape(shape)
simulated[key] = np.asarray(sim_arrays[index], dtype=np.float32).reshape(shape)
input_files[key] = csv_path
return reference, simulated, input_files
def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--workspace", type=Path, required=True,
help="validator workspace containing inputs, outputs, and simulation")
parser.add_argument("--model", type=Path, required=True, help="five-output ONNX tap model")
parser.add_argument("--output-dir", type=Path, required=True,
help="directory for arrays.npz, metadata.json, and decomposition.json")
args = parser.parse_args()
args.output_dir.mkdir(parents=True, exist_ok=True)
model = onnx.load(args.model)
reference, simulated, source_files = load_arrays(args.workspace, args.model)
scale = np.float32(load_constant(model, "/model.10/m/m.0/attn/Constant_1_output_0"))
ref_v, ref_raw, ref_scaled, ref_rhs, ref_c = (reference[key] for key in ("v", "raw", "scaled", "rhs", "c"))
sim_v, sim_raw, sim_scaled, sim_rhs, sim_c = (simulated[key] for key in ("v", "raw", "scaled", "rhs", "c"))
ref_score_transpose = np.swapaxes(ref_scaled, -1, -2)
sim_score_transpose = np.swapaxes(sim_scaled, -1, -2)
ref_ss_f32 = f32_matmul(ref_v, ref_rhs)
sim_ss_f32 = f32_matmul(sim_v, sim_rhs)
ref_ss_f64 = f64_matmul(ref_v, ref_rhs)
sim_ss_f64 = f64_matmul(sim_v, sim_rhs)
ref_split_f32 = (f32_matmul(ref_v, np.swapaxes(ref_raw, -1, -2)) * scale).astype(np.float32)
sim_split_f32 = (f32_matmul(sim_v, np.swapaxes(sim_raw, -1, -2)) * scale).astype(np.float32)
ref_split_f64 = f64_matmul(ref_v, np.swapaxes(ref_raw, -1, -2)) * np.float64(scale)
sim_split_f64 = f64_matmul(sim_v, np.swapaxes(sim_raw, -1, -2)) * np.float64(scale)
arrays = {
**{f"ref_{key}": value for key, value in reference.items()},
**{f"sim_{key}": value for key, value in simulated.items()},
"ref_ss_f32": ref_ss_f32,
"sim_ss_f32": sim_ss_f32,
"ref_ss_f64": ref_ss_f64,
"sim_ss_f64": sim_ss_f64,
"ref_split_f32": ref_split_f32,
"sim_split_f32": sim_split_f32,
"ref_split_f64": ref_split_f64,
"sim_split_f64": sim_split_f64,
}
arrays_path = args.output_dir / "arrays.npz"
np.savez_compressed(arrays_path, **arrays)
metrics = {
"validator_policy": {
"absolute_tolerance": ABSOLUTE_TOLERANCE,
"relative_tolerance": RELATIVE_TOLERANCE,
},
"scale": float(scale),
"shape": list(ref_c.shape),
"tap_differences": {key: metric(simulated[key], reference[key]) for key in TAP_NAMES},
"rhs_transpose_consistency": metric(ref_rhs, ref_score_transpose),
"sim_rhs_transpose_consistency": metric(sim_rhs, sim_score_transpose),
"c_sim_vs_ss_f32": metric(sim_c, ref_ss_f32),
"c_ref_vs_ss_f32": metric(ref_c, ref_ss_f32),
"c_sim_vs_simulated_inputs_ss_f32": metric(sim_c, sim_ss_f32),
"v_drift_only": metric(f32_matmul(sim_v, ref_rhs), ref_ss_f32),
"rhs_drift_only": metric(f32_matmul(ref_v, sim_rhs), ref_ss_f32),
"joint_input_drift": metric(sim_ss_f32, ref_ss_f32),
"scale_reassociation_reference": metric(ref_split_f32, ref_ss_f32),
"scale_reassociation_simulated": metric(sim_split_f32, sim_ss_f32),
"reference_accumulation_f32_vs_f64": metric(ref_ss_f32, ref_ss_f64),
"simulated_accumulation_f32_vs_f64": metric(sim_ss_f32, sim_ss_f64),
"split_accumulation_reference_f32_vs_f64": metric(ref_split_f32, ref_split_f64),
"split_accumulation_simulated_f32_vs_f64": metric(sim_split_f32, sim_split_f64),
}
decomposition_path = args.output_dir / "decomposition.json"
decomposition_path.write_text(json.dumps(metrics, indent=2) + "\n", encoding="utf-8")
metadata = {
"model": str(args.model),
"model_sha256": sha256(args.model),
"workspace": str(args.workspace),
"arrays_sha256": sha256(arrays_path),
"source_sha256": {key: sha256(path) for key, path in source_files.items()},
"simulator_output_sha256": sha256(args.workspace / "simulation" / "out.bin"),
"input_sha256": sha256(args.workspace / "inputs" / "in0.csv"),
"outputs": TAP_NAMES,
"arrays": {key: {"dtype": str(value.dtype), "shape": list(value.shape)} for key, value in arrays.items()},
}
(args.output_dir / "metadata.json").write_text(json.dumps(metadata, indent=2) + "\n", encoding="utf-8")
print(json.dumps(metrics, indent=2))
if __name__ == "__main__":
main()