restore unwanted changes
Validate Operations / validate-operations (push) Waiting to run

This commit is contained in:
NiccoloN
2026-08-06 14:52:55 +02:00
parent 42c236b6a5
commit 4acd3b0c81
15 changed files with 172 additions and 1929 deletions
-2
View File
@@ -20,5 +20,3 @@ networks/**/*.csv
!networks/full_net/validation_results.csv
!networks/pimcomp_models/validation_results.csv
!networks/pimcomp_models/results.csv
!networks/pimcomp_models/validation_results.csv
!operations/validation_results.csv
@@ -1,3 +1,5 @@
model,raptor_latency_ms,pimcomp_latency_ms,raptor_energy_pj,pimcomp_energy_pj,faster_compiler,speedup
vgg8,1.521060,7.985074,486309111.040001,1597904071.120000,raptor,5.25
resnet18,33.552733,58.853613,9702508727.119982,13983148468.119974,raptor,1.75
vgg8,1.465778,7.985074,477298145.040001,1597904071.120000,raptor,5.45
resnet18,28.099952,58.853733,8781611766.119984,13983168748.119974,raptor,2.09
resnet34,45.781486,91.607980,14962940227.679951,22722922369.680016,raptor,2.00
googlenet,13.371204,62.923463,6117835798.919991,14547526780.240000,raptor,4.71
1 model raptor_latency_ms pimcomp_latency_ms raptor_energy_pj pimcomp_energy_pj faster_compiler speedup
2 vgg8 1.521060 1.465778 7.985074 486309111.040001 477298145.040001 1597904071.120000 raptor 5.25 5.45
3 resnet18 33.552733 28.099952 58.853613 58.853733 9702508727.119982 8781611766.119984 13983148468.119974 13983168748.119974 raptor 1.75 2.09
4 resnet34 45.781486 91.607980 14962940227.679951 22722922369.680016 raptor 2.00
5 googlenet 13.371204 62.923463 6117835798.919991 14547526780.240000 raptor 4.71
+168 -177
View File
@@ -1,178 +1,169 @@
Operation,Result,Compile,Host mem,Cores mem,Cores,Xbars,Latency,Power,Energy
add/after_gemm,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
add/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/broadcast_row,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/channel_broadcast_1024,PASS,-,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
add/leading_dimension_broadcast,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
concat/channel_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000457 ms,78.157549 mW,35718.000000 pJ
concat/negative_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.001043 ms,78.092042 mW,81450.000000 pJ
concat/three_inputs_channel_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000644 ms,78.149068 mW,50328.000000 pJ
conv/batch_2,PASS,-,0.00 MiB,0.00 MiB,2,2,0.013694 ms,82.623885 mW,1131451.480000 pJ
conv/batch_4_pointwise,PASS,-,0.00 MiB,0.01 MiB,5,4,0.003932 ms,116.078576 mW,456420.960000 pJ
conv/conv_1x3x224x224_w64x3x7x7_b64,PASS,-,24.14 MiB,61.87 MiB,168,169,38.414551 ms,185.256473 mW,7116544212.120002 pJ
conv/depthwise_1024_channels,PASS,-,0.19 MiB,0.38 MiB,129,128,0.220751 ms,178.454307 mW,39393966.720000 pJ
conv/depthwise_grouped,PASS,-,0.01 MiB,0.00 MiB,5,4,0.006234 ms,107.776541 mW,671878.960000 pJ
conv/dilated_3x3,PASS,-,0.01 MiB,0.01 MiB,10,9,0.008713 ms,118.767263 mW,1034819.160000 pJ
conv/dynamic,PASS,-,0.00 MiB,0.00 MiB,5,0,0.001835 ms,92.281199 mW,169336.000000 pJ
conv/explicit_padding,PASS,-,0.01 MiB,0.02 MiB,17,16,0.010007 ms,145.338047 mW,1454397.840000 pJ
conv/grouped_many_groups,PASS,-,0.05 MiB,0.09 MiB,65,64,0.181897 ms,142.207471 mW,25867112.360000 pJ
conv/grouped_two_groups,PASS,-,0.00 MiB,0.00 MiB,3,2,0.005361 ms,101.457653 mW,543914.480000 pJ
conv/huge_pointwise_1024,PASS,-,0.01 MiB,0.11 MiB,73,64,0.015615 ms,249.545140 mW,3896647.360000 pJ
conv/huge_pointwise_1024_dynamic,PASS,-,8.04 MiB,12.61 MiB,168,0,2.627964 ms,169.518697 mW,445489032.000000 pJ
conv/kernel_3x3,PASS,-,0.01 MiB,0.01 MiB,10,9,0.007186 ms,123.801859 mW,889640.160000 pJ
conv/kernel_equals_input_spatial,PASS,-,0.00 MiB,0.00 MiB,2,2,0.004639 ms,89.607562 mW,415689.480000 pJ
conv/large_input_channels_1x1,PASS,-,0.01 MiB,0.02 MiB,9,8,0.007648 ms,117.824519 mW,901121.920000 pJ
conv/large_output_channels_1x1,PASS,-,0.01 MiB,0.02 MiB,17,8,0.008871 ms,128.442782 mW,1139415.920000 pJ
conv/large_spatial,PASS,-,0.01 MiB,0.04 MiB,37,36,0.017018 ms,172.073372 mW,2928344.640000 pJ
conv/multi_channel,PASS,-,0.00 MiB,0.00 MiB,4,3,0.006482 ms,105.683542 mW,685040.720000 pJ
conv/non_square_kernel_1x3,PASS,-,0.00 MiB,0.00 MiB,3,2,0.006842 ms,99.349968 mW,679752.480000 pJ
conv/non_square_kernel_3x1,PASS,-,0.00 MiB,0.00 MiB,3,2,0.013484 ms,95.889683 mW,1292976.480000 pJ
conv/non_uniform_stride,PASS,-,0.00 MiB,0.00 MiB,4,3,0.007601 ms,104.048772 mW,790874.720000 pJ
conv/output_channel_grouping_minimal,PASS,-,0.10 MiB,0.34 MiB,131,128,0.258453 ms,170.730913 mW,44125916.720000 pJ
conv/pointwise_1x1,PASS,-,0.00 MiB,0.00 MiB,1,1,0.012303 ms,80.244188 mW,987244.240000 pJ
conv/pointwise_tiled_chain,PASS,-,0.01 MiB,0.04 MiB,20,80,0.041886 ms,153.880896 mW,6445455.200000 pJ
conv/real_asymmetric_padding,PASS,-,0.01 MiB,0.03 MiB,29,28,0.014457 ms,153.669968 mW,2221606.720000 pJ
conv/relu_conv_store,PASS,-,0.16 MiB,0.67 MiB,168,184,0.562898 ms,183.084489 mW,103057892.800000 pJ
conv/same_lower_3x3,PASS,-,0.01 MiB,0.02 MiB,26,25,0.013331 ms,166.154752 mW,2215009.000000 pJ
conv/same_padding_3x3,PASS,-,0.01 MiB,0.02 MiB,26,25,0.013331 ms,166.154752 mW,2215009.000000 pJ
conv/simple,PASS,-,0.00 MiB,0.00 MiB,1,1,0.004301 ms,83.833583 mW,360568.240000 pJ
conv/strategy_depthwise_16,PASS,-,0.06 MiB,0.35 MiB,168,168,0.335115 ms,197.936467 mW,66331479.080000 pJ
conv/strategy_input_k_tiled,PASS,-,0.08 MiB,0.27 MiB,109,108,0.353736 ms,170.812713 mW,60422605.920000 pJ
conv/strategy_output_channel_tiled,PASS,-,0.03 MiB,0.16 MiB,74,72,0.091463 ms,155.743189 mW,14244739.280000 pJ
conv/strategy_streamed_packed,PASS,-,3.34 MiB,7.89 MiB,168,168,9.353833 ms,179.858301 mW,1682364509.560000 pJ
conv/strategy_streamed_patch,PASS,-,0.34 MiB,1.32 MiB,168,168,1.904655 ms,181.910449 mW,346476645.640000 pJ
conv/strategy_tiled_2d,PASS,-,0.11 MiB,0.44 MiB,168,168,0.415594 ms,182.127047 mW,75690907.840000 pJ
conv/stride_2,PASS,-,0.01 MiB,0.00 MiB,5,4,0.005237 ms,110.780019 mW,580154.960000 pJ
conv/with_bias_3x3,PASS,-,0.00 MiB,0.01 MiB,4,3,0.007452 ms,104.162738 mW,776220.720000 pJ
conv/with_constant,PASS,-,0.00 MiB,0.00 MiB,1,1,0.006622 ms,81.738182 mW,541270.240000 pJ
conv/without_kernel_shape_attr,PASS,-,0.01 MiB,0.01 MiB,10,9,0.007186 ms,123.801859 mW,889640.160000 pJ
conv/yolo11n_depthwise_head,PASS,-,8.66 MiB,34.24 MiB,168,255,42.701404 ms,200.519161 mW,8562449708.000010 pJ
conv/yolo11n_heavy,PASS,-,4.82 MiB,19.10 MiB,161,800,8.535404 ms,350.863768 mW,2994764012.000010 pJ
conv/yolo11n_stem,PASS,-,12.86 MiB,37.59 MiB,168,488,14.239985 ms,301.233376 mW,4289558753.000010 pJ
div/after_gemm,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
div/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/channel_broadcast_1024,PASS,-,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/leading_dimension_broadcast,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
div/runtime_scalar_rhs,PASS,-,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
div/scalar_constant,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
gather/3d_input_axis1,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000589 ms,78.081494 mW,45990.000000 pJ
gather/axis0_matrix_indices,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000697 ms,78.068867 mW,54414.000000 pJ
gather/axis1,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000801 ms,78.059925 mW,62526.000000 pJ
gather/negative_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.001437 ms,78.033403 mW,112134.000000 pJ
gather/negative_indices,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000376 ms,78.127660 mW,29376.000000 pJ
gemm/alpha_beta,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007456 ms,105.272125 mW,784908.960000 pJ
gemm/bias_rank2_broadcast,PASS,-,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/dynamic,PASS,-,0.00 MiB,0.00 MiB,5,0,0.002421 ms,91.480793 mW,221475.000000 pJ
gemm/dynamic_alpha,PASS,-,0.00 MiB,0.00 MiB,5,0,0.003262 ms,91.415696 mW,298198.000000 pJ
gemm/dynamic_beta,PASS,-,0.00 MiB,0.00 MiB,5,0,0.004365 ms,91.316151 mW,398595.000000 pJ
gemm/dynamic_bias,PASS,-,0.00 MiB,0.00 MiB,5,0,0.002665 ms,91.445779 mW,243703.000000 pJ
gemm/dynamic_bias_alpha_beta,PASS,-,0.00 MiB,0.00 MiB,5,0,0.005629 ms,91.279268 mW,513811.000000 pJ
gemm/dynamic_transB,PASS,-,0.00 MiB,0.00 MiB,5,0,0.001301 ms,91.378171 mW,118883.000000 pJ
gemm/huge_1024,PASS,-,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
gemm/large,PASS,-,0.02 MiB,0.03 MiB,17,16,0.011229 ms,140.152181 mW,1573768.840000 pJ
gemm/large_k_small_n,PASS,-,0.01 MiB,0.01 MiB,9,8,0.004748 ms,133.481449 mW,633769.920000 pJ
gemm/non_square,PASS,-,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/scalar_bias,PASS,-,0.00 MiB,0.01 MiB,5,4,0.007072 ms,105.979208 mW,749484.960000 pJ
gemm/simple,PASS,-,0.03 MiB,0.08 MiB,42,40,0.021640 ms,151.774196 mW,3284393.600000 pJ
gemm/small,PASS,-,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
gemm/small_k_large_n,PASS,-,0.01 MiB,0.02 MiB,17,8,0.007962 ms,131.005014 mW,1043061.920000 pJ
gemm/transA,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transA_transB,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005762 ms,109.140743 mW,628868.960000 pJ
gemm/transB,PASS,-,0.00 MiB,0.01 MiB,5,4,0.003527 ms,118.958310 mW,419565.960000 pJ
gemm/transB_with_bias,PASS,-,0.01 MiB,0.01 MiB,5,4,0.005046 ms,110.546762 mW,557818.960000 pJ
gemm/with_bias,PASS,-,0.01 MiB,0.01 MiB,5,4,0.005562 ms,108.767882 mW,604966.960000 pJ
gemv/constant,PASS,-,0.00 MiB,0.00 MiB,0,0,0.000000 ms,2.000000 mW,0.000000 pJ
gemv/simple,PASS,-,0.00 MiB,0.01 MiB,6,4,0.005160 ms,111.150380 mW,573535.960000 pJ
gemv/with_heterogeneous_constant,PASS,-,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_homogeneous_constant,PASS,-,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
gemv/with_scalar_constant,PASS,-,0.00 MiB,0.01 MiB,6,4,0.005549 ms,109.816536 mW,609371.960000 pJ
matmul/basic,PASS,-,0.00 MiB,0.00 MiB,2,2,0.004420 ms,90.144000 mW,398436.480000 pJ
matmul/batched_3d,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/batched_3d_dynamic,PASS,-,0.00 MiB,0.00 MiB,4,0,0.001822 ms,92.192645 mW,167975.000000 pJ
matmul/batched_left_constant,PASS,-,0.00 MiB,0.02 MiB,9,8,0.008822 ms,114.385164 mW,1009105.920000 pJ
matmul/batched_lhs_broadcast,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005681 ms,109.389361 mW,621440.960000 pJ
matmul/batched_rhs_broadcast,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005958 ms,108.588949 mW,646972.960000 pJ
matmul/dynamic,PASS,-,0.00 MiB,0.00 MiB,5,0,0.001621 ms,91.421962 mW,148195.000000 pJ
matmul/huge_1024,PASS,-,0.01 MiB,0.10 MiB,73,64,0.017522 ms,215.037402 mW,3767885.360000 pJ
matmul/left_constant,PASS,-,0.00 MiB,0.01 MiB,5,4,0.005853 ms,108.861944 mW,637168.960000 pJ
matmul/matrix_vector,PASS,-,0.52 MiB,0.78 MiB,168,173,0.384660 ms,202.131271 mW,77751814.880000 pJ
matmul/vector_matrix,PASS,-,0.01 MiB,0.01 MiB,9,8,0.007409 ms,118.680243 mW,879301.920000 pJ
matmul/yolo_attention,PASS,-,1.02 MiB,43.44 MiB,168,0,8.151445 ms,170.003707 mW,1385775865.000000 pJ
mul/after_conv,PASS,-,0.00 MiB,0.00 MiB,4,3,0.005453 ms,107.639046 mW,586955.720000 pJ
mul/after_conv_scalar_constant,PASS,-,0.00 MiB,0.00 MiB,4,3,0.005453 ms,107.639046 mW,586955.720000 pJ
mul/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/channel_broadcast_1024,PASS,-,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
mul/leading_dimension_broadcast,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
mul/scalar_constant,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
pool/avg_basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.011939 ms,78.022112 mW,931506.000000 pJ
pool/avg_ceil_mode,PASS,-,0.00 MiB,0.00 MiB,1,0,0.004359 ms,78.033035 mW,340146.000000 pJ
pool/avg_explicit_padding,PASS,-,0.00 MiB,0.00 MiB,1,0,0.008822 ms,78.027205 mW,688356.000000 pJ
pool/avg_include_pad,PASS,-,0.00 MiB,0.00 MiB,1,0,0.008506 ms,78.016929 mW,663612.000000 pJ
pool/avg_large_channels,PASS,-,0.04 MiB,0.02 MiB,1,0,0.235874 ms,78.004172 mW,18399156.000000 pJ
pool/avg_non_uniform_stride,PASS,-,0.00 MiB,0.00 MiB,1,0,0.014513 ms,78.016537 mW,1132254.000000 pJ
pool/avg_real_asymmetric_padding,PASS,-,0.00 MiB,0.00 MiB,1,0,0.025206 ms,78.024756 mW,1966692.000000 pJ
pool/max_after_conv,PASS,-,0.00 MiB,0.00 MiB,5,4,0.012215 ms,99.115019 mW,1210689.960000 pJ
pool/max_basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.004160 ms,78.063462 mW,324744.000000 pJ
pool/max_ceil_mode,PASS,-,0.00 MiB,0.00 MiB,1,0,0.001940 ms,78.074227 mW,151464.000000 pJ
pool/max_global_style_kernel_equals_input,PASS,-,0.00 MiB,0.00 MiB,1,0,0.008443 ms,78.008528 mW,658626.000000 pJ
pool/max_non_square_kernel,PASS,-,0.00 MiB,0.00 MiB,1,0,0.013626 ms,78.017613 mW,1063068.000000 pJ
pool/max_real_asymmetric_padding,PASS,-,0.00 MiB,0.00 MiB,1,0,0.010444 ms,78.034470 mW,814992.000000 pJ
pool/max_same_upper,PASS,-,0.00 MiB,0.00 MiB,1,0,0.008010 ms,78.035955 mW,625068.000000 pJ
pool/max_stride2_multichannel,PASS,-,0.00 MiB,0.00 MiB,1,0,0.015987 ms,78.018015 mW,1247274.000000 pJ
reduce_mean/4d_spatial,PASS,-,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.00 MiB,0.00 MiB,4,0,0.000655 ms,94.352672 mW,61801.000000 pJ
reduce_mean/after_conv,PASS,-,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.00 MiB,0.00 MiB,2,0,0.000391 ms,79.237852 mW,30982.000000 pJ
reduce_mean/all_axes_keepdims_1,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/basic,PASS,-,0.00 MiB,0.00 MiB,4,0,0.000373 ms,93.514745 mW,34881.000000 pJ
reduce_mean/channel_axis_nchw,PASS,-,0.03 MiB,0.02 MiB,4,0,0.164926 ms,93.596631 mW,15436518.000000 pJ
reduce_mean/keepdims_0,PASS,-,0.00 MiB,0.00 MiB,5,0,0.000748 ms,91.401070 mW,68368.000000 pJ
reduce_mean/large_dimension_1024,PASS,-,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.00 MiB,0.00 MiB,2,0,0.000271 ms,79.354244 mW,21505.000000 pJ
reduce_mean/legacy_axis1_keepdims_0,PASS,-,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.00 MiB,0.00 MiB,8,0,0.001373 ms,94.559359 mW,129830.000000 pJ
reduce_mean/legacy_empty_axes_noop,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/legacy_nchw_spatial,PASS,-,0.00 MiB,0.00 MiB,3,0,0.000321 ms,92.448598 mW,29676.000000 pJ
reduce_mean/legacy_negative_axis,PASS,-,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.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reduce_mean/negative_axis,PASS,-,0.00 MiB,0.00 MiB,6,0,0.000553 ms,93.520796 mW,51717.000000 pJ
relu/4d,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
relu/after_conv,PASS,-,0.00 MiB,0.00 MiB,4,3,0.005352 ms,107.891951 mW,577437.720000 pJ
relu/after_gemm,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
relu/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
reshape/4d_to_2d_flatten,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000258 ms,78.279070 mW,20196.000000 pJ
reshape/infer_dim_minus_one,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/same_rank,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
reshape/zero_copies_input_dim,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000162 ms,78.296296 mW,12684.000000 pJ
resize/height_only,PASS,-,0.00 MiB,0.00 MiB,4,0,0.000693 ms,93.554113 mW,64833.000000 pJ
resize/nearest_2x,PASS,-,0.00 MiB,0.00 MiB,4,0,0.001173 ms,93.572890 mW,109761.000000 pJ
resize/nearest_downsample,PASS,-,0.00 MiB,0.00 MiB,2,0,0.000427 ms,79.449649 mW,33925.000000 pJ
resize/non_uniform,PASS,-,0.00 MiB,0.00 MiB,6,0,0.001753 ms,93.575014 mW,164037.000000 pJ
resize/width_only,PASS,-,0.00 MiB,0.00 MiB,2,0,0.000667 ms,79.503748 mW,53029.000000 pJ
resize/with_sizes,PASS,-,0.00 MiB,0.00 MiB,3,0,0.000797 ms,92.542033 mW,73756.000000 pJ
sigmoid/4d,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000521 ms,78.184261 mW,40734.000000 pJ
sigmoid/after_gemm,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007513 ms,105.158653 mW,790056.960000 pJ
sigmoid/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000221 ms,78.217195 mW,17286.000000 pJ
slice/2d_basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/after_conv,PASS,-,0.00 MiB,0.01 MiB,7,6,0.011296 ms,118.190765 mW,1335082.880000 pJ
slice/default_axes,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
slice/large_channel_1024,PASS,-,0.01 MiB,0.00 MiB,1,0,0.002832 ms,78.144068 mW,221304.000000 pJ
slice/nchw_spatial_crop,PASS,-,0.00 MiB,0.00 MiB,1,0,0.001302 ms,78.239631 mW,101868.000000 pJ
slice/negative_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000562 ms,78.298932 mW,44004.000000 pJ
slice/negative_indices,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000322 ms,78.298137 mW,25212.000000 pJ
slice/step2,PASS,-,0.00 MiB,0.00 MiB,1,0,0.002042 ms,78.293830 mW,159876.000000 pJ
softmax/3d_last_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/channel_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/large_dimension_1024,PASS,-,0.01 MiB,0.01 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
softmax/negative_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,UNSUPPORTED,UNSUPPORTED,UNSUPPORTED
split/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000403 ms,78.297767 mW,31554.000000 pJ
split/equal_three_way,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000564 ms,78.297872 mW,44160.000000 pJ
split/negative_axis,PASS,-,0.00 MiB,0.00 MiB,1,0,0.001083 ms,78.288089 mW,84786.000000 pJ
split/uneven_channel_axis_4d,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000242 ms,78.297521 mW,18948.000000 pJ
sub/after_gemm,PASS,-,0.01 MiB,0.01 MiB,5,4,0.007784 ms,104.703618 mW,815012.960000 pJ
sub/basic,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/broadcast_row,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
sub/channel_broadcast_1024,PASS,-,0.02 MiB,0.01 MiB,1,0,0.006913 ms,78.118038 mW,540030.000000 pJ
sub/constant_lhs_broadcast,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000322 ms,78.223602 mW,25188.000000 pJ
sub/leading_dimension_broadcast,PASS,-,0.00 MiB,0.00 MiB,1,0,0.000323 ms,78.222910 mW,25266.000000 pJ
add/after_gemm,PASS,0.063 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
add/basic,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
add/broadcast_row,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
add/channel_broadcast_1024,PASS,0.061 s,0.02 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
add/leading_dimension_broadcast,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
concat/channel_axis,PASS,0.069 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
concat/negative_axis,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
concat/three_inputs_channel_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
conv/batch_2,PASS,0.066 s,0.00 MiB,0.00 MiB,2,2,SKIP,SKIP,SKIP
conv/batch_4_pointwise,PASS,0.065 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
conv/depthwise_1024_channels,PASS,0.083 s,0.19 MiB,0.38 MiB,129,128,SKIP,SKIP,SKIP
conv/depthwise_grouped,PASS,0.071 s,0.01 MiB,0.00 MiB,5,4,SKIP,SKIP,SKIP
conv/dilated_3x3,PASS,0.068 s,0.01 MiB,0.01 MiB,10,9,SKIP,SKIP,SKIP
conv/dynamic,PASS,0.065 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
conv/explicit_padding,PASS,0.062 s,0.01 MiB,0.02 MiB,17,16,SKIP,SKIP,SKIP
conv/grouped_many_groups,PASS,0.442 s,0.05 MiB,0.09 MiB,65,64,SKIP,SKIP,SKIP
conv/grouped_two_groups,PASS,0.060 s,0.00 MiB,0.00 MiB,3,2,SKIP,SKIP,SKIP
conv/huge_pointwise_1024,PASS,0.156 s,0.01 MiB,0.11 MiB,73,64,SKIP,SKIP,SKIP
conv/huge_pointwise_1024_dynamic,PASS,0.079 s,8.04 MiB,12.61 MiB,168,0,SKIP,SKIP,SKIP
conv/kernel_3x3,PASS,0.062 s,0.01 MiB,0.01 MiB,10,9,SKIP,SKIP,SKIP
conv/kernel_equals_input_spatial,PASS,0.064 s,0.00 MiB,0.00 MiB,2,2,SKIP,SKIP,SKIP
conv/large_input_channels_1x1,PASS,0.089 s,0.01 MiB,0.02 MiB,9,8,SKIP,SKIP,SKIP
conv/large_output_channels_1x1,PASS,0.098 s,0.01 MiB,0.02 MiB,17,8,SKIP,SKIP,SKIP
conv/large_spatial,PASS,0.069 s,0.01 MiB,0.04 MiB,37,36,SKIP,SKIP,SKIP
conv/multi_channel,PASS,0.066 s,0.00 MiB,0.00 MiB,4,3,SKIP,SKIP,SKIP
conv/non_square_kernel_1x3,PASS,0.061 s,0.00 MiB,0.00 MiB,3,2,SKIP,SKIP,SKIP
conv/non_square_kernel_3x1,PASS,0.064 s,0.00 MiB,0.00 MiB,3,2,SKIP,SKIP,SKIP
conv/non_uniform_stride,PASS,0.062 s,0.00 MiB,0.00 MiB,4,3,SKIP,SKIP,SKIP
conv/pointwise_1x1,PASS,0.059 s,0.00 MiB,0.00 MiB,1,1,SKIP,SKIP,SKIP
conv/pointwise_tiled_chain,PASS,0.604 s,0.01 MiB,0.04 MiB,20,80,SKIP,SKIP,SKIP
conv/real_asymmetric_padding,PASS,0.060 s,0.01 MiB,0.03 MiB,29,28,SKIP,SKIP,SKIP
conv/relu_conv_store,PASS,0.091 s,0.16 MiB,0.67 MiB,168,184,SKIP,SKIP,SKIP
conv/same_lower_3x3,PASS,0.078 s,0.01 MiB,0.02 MiB,26,25,SKIP,SKIP,SKIP
conv/same_padding_3x3,PASS,0.070 s,0.01 MiB,0.02 MiB,26,25,SKIP,SKIP,SKIP
conv/simple,PASS,0.064 s,0.00 MiB,0.00 MiB,1,1,SKIP,SKIP,SKIP
conv/stride_2,PASS,0.064 s,0.01 MiB,0.00 MiB,5,4,SKIP,SKIP,SKIP
conv/with_bias_3x3,PASS,0.067 s,0.00 MiB,0.01 MiB,4,3,SKIP,SKIP,SKIP
conv/with_constant,PASS,0.070 s,0.00 MiB,0.00 MiB,1,1,SKIP,SKIP,SKIP
conv/without_kernel_shape_attr,PASS,0.069 s,0.01 MiB,0.01 MiB,10,9,SKIP,SKIP,SKIP
conv/yolo11n_depthwise_head,PASS,1.482 s,8.66 MiB,34.24 MiB,168,255,SKIP,SKIP,SKIP
conv/yolo11n_heavy,PASS,0.431 s,4.82 MiB,19.10 MiB,161,800,SKIP,SKIP,SKIP
conv/yolo11n_stem,PASS,0.783 s,12.86 MiB,37.59 MiB,168,488,SKIP,SKIP,SKIP
div/after_gemm,PASS,0.072 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
div/basic,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
div/channel_broadcast_1024,PASS,0.066 s,0.02 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
div/leading_dimension_broadcast,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
div/runtime_scalar_rhs,PASS,0.056 s,0.02 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
div/scalar_constant,PASS,0.073 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gather/3d_input_axis1,PASS,0.060 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gather/axis0_matrix_indices,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gather/axis1,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gather/negative_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gather/negative_indices,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
gemm/alpha_beta,PASS,0.067 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/bias_rank2_broadcast,PASS,0.060 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/dynamic,PASS,0.064 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/dynamic_alpha,PASS,0.062 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/dynamic_beta,PASS,0.060 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/dynamic_bias,PASS,0.058 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/dynamic_bias_alpha_beta,PASS,0.067 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/dynamic_transB,PASS,0.062 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
gemm/huge_1024,PASS,0.147 s,0.01 MiB,0.10 MiB,73,64,SKIP,SKIP,SKIP
gemm/large,PASS,0.068 s,0.02 MiB,0.03 MiB,17,16,SKIP,SKIP,SKIP
gemm/large_k_small_n,PASS,0.095 s,0.01 MiB,0.01 MiB,9,8,SKIP,SKIP,SKIP
gemm/non_square,PASS,0.063 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/scalar_bias,PASS,0.060 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/simple,PASS,0.072 s,0.03 MiB,0.08 MiB,42,40,SKIP,SKIP,SKIP
gemm/small,PASS,0.065 s,0.00 MiB,0.00 MiB,2,2,SKIP,SKIP,SKIP
gemm/small_k_large_n,PASS,0.097 s,0.01 MiB,0.02 MiB,17,8,SKIP,SKIP,SKIP
gemm/transA,PASS,0.064 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/transA_transB,PASS,0.069 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/transB,PASS,0.062 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/transB_with_bias,PASS,0.055 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemm/with_bias,PASS,0.067 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
gemv/constant,PASS,0.064 s,0.00 MiB,0.00 MiB,0,0,SKIP,SKIP,SKIP
gemv/simple,PASS,0.069 s,0.00 MiB,0.01 MiB,6,4,SKIP,SKIP,SKIP
gemv/with_heterogeneous_constant,PASS,0.066 s,0.00 MiB,0.01 MiB,6,4,SKIP,SKIP,SKIP
gemv/with_homogeneous_constant,PASS,0.070 s,0.00 MiB,0.01 MiB,6,4,SKIP,SKIP,SKIP
gemv/with_scalar_constant,PASS,0.070 s,0.00 MiB,0.01 MiB,6,4,SKIP,SKIP,SKIP
matmul/basic,PASS,0.062 s,0.00 MiB,0.00 MiB,2,2,SKIP,SKIP,SKIP
matmul/batched_3d,PASS,0.066 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
matmul/batched_3d_dynamic,PASS,0.057 s,0.00 MiB,0.00 MiB,4,0,SKIP,SKIP,SKIP
matmul/batched_left_constant,PASS,0.070 s,0.00 MiB,0.02 MiB,9,8,SKIP,SKIP,SKIP
matmul/batched_lhs_broadcast,PASS,0.063 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
matmul/batched_rhs_broadcast,PASS,0.062 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
matmul/dynamic,PASS,0.060 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
matmul/huge_1024,PASS,0.145 s,0.01 MiB,0.10 MiB,73,64,SKIP,SKIP,SKIP
matmul/left_constant,PASS,0.051 s,0.00 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
matmul/matrix_vector,PASS,0.095 s,0.52 MiB,0.78 MiB,168,173,SKIP,SKIP,SKIP
matmul/vector_matrix,PASS,0.087 s,0.01 MiB,0.01 MiB,9,8,SKIP,SKIP,SKIP
matmul/yolo_attention,PASS,0.385 s,1.02 MiB,43.44 MiB,168,0,SKIP,SKIP,SKIP
mul/after_conv,PASS,0.055 s,0.00 MiB,0.00 MiB,4,3,SKIP,SKIP,SKIP
mul/basic,PASS,0.055 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
mul/channel_broadcast_1024,PASS,0.058 s,0.02 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
mul/leading_dimension_broadcast,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
mul/scalar_constant,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_basic,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_ceil_mode,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_explicit_padding,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_include_pad,PASS,0.049 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_large_channels,PASS,0.059 s,0.04 MiB,0.02 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_non_uniform_stride,PASS,0.066 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/avg_real_asymmetric_padding,PASS,0.055 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_after_conv,PASS,0.069 s,0.00 MiB,0.00 MiB,5,4,SKIP,SKIP,SKIP
pool/max_basic,PASS,0.064 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_ceil_mode,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_global_style_kernel_equals_input,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_non_square_kernel,PASS,0.067 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_real_asymmetric_padding,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_same_upper,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
pool/max_stride2_multichannel,PASS,0.076 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reduce_mean/4d_spatial,PASS,0.058 s,0.00 MiB,0.00 MiB,3,0,SKIP,SKIP,SKIP
reduce_mean/4d_spatial_keepdims_0,PASS,0.068 s,0.00 MiB,0.00 MiB,4,0,SKIP,SKIP,SKIP
reduce_mean/after_conv,PASS,0.067 s,0.00 MiB,0.00 MiB,5,3,SKIP,SKIP,SKIP
reduce_mean/all_axes_keepdims_0,PASS,0.057 s,0.00 MiB,0.00 MiB,2,0,SKIP,SKIP,SKIP
reduce_mean/all_axes_keepdims_1,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reduce_mean/basic,PASS,0.058 s,0.00 MiB,0.00 MiB,4,0,SKIP,SKIP,SKIP
reduce_mean/channel_axis_nchw,PASS,0.063 s,0.03 MiB,0.02 MiB,4,0,SKIP,SKIP,SKIP
reduce_mean/keepdims_0,PASS,0.064 s,0.00 MiB,0.00 MiB,5,0,SKIP,SKIP,SKIP
reduce_mean/large_dimension_1024,PASS,0.066 s,0.01 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reduce_mean/legacy_axes_1_2_keepdims_1,PASS,0.069 s,0.00 MiB,0.00 MiB,2,0,SKIP,SKIP,SKIP
reduce_mean/legacy_axis1_keepdims_0,PASS,0.067 s,0.00 MiB,0.00 MiB,9,0,SKIP,SKIP,SKIP
reduce_mean/legacy_axis1_keepdims_1,PASS,0.057 s,0.00 MiB,0.00 MiB,8,0,SKIP,SKIP,SKIP
reduce_mean/legacy_empty_axes_noop,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reduce_mean/legacy_nchw_spatial,PASS,0.059 s,0.00 MiB,0.00 MiB,3,0,SKIP,SKIP,SKIP
reduce_mean/legacy_negative_axis,PASS,0.052 s,0.00 MiB,0.00 MiB,6,0,SKIP,SKIP,SKIP
reduce_mean/legacy_reduce_all_keepdims_1,PASS,0.057 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reduce_mean/negative_axis,PASS,0.055 s,0.00 MiB,0.00 MiB,6,0,SKIP,SKIP,SKIP
relu/4d,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
relu/after_conv,PASS,0.062 s,0.00 MiB,0.00 MiB,4,3,SKIP,SKIP,SKIP
relu/after_gemm,PASS,0.062 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
relu/basic,PASS,0.062 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reshape/4d_to_2d_flatten,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reshape/infer_dim_minus_one,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reshape/same_rank,PASS,0.056 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
reshape/zero_copies_input_dim,PASS,0.077 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
resize/height_only,PASS,0.059 s,0.00 MiB,0.00 MiB,4,0,SKIP,SKIP,SKIP
resize/nearest_2x,PASS,0.066 s,0.00 MiB,0.00 MiB,4,0,SKIP,SKIP,SKIP
resize/nearest_downsample,PASS,0.062 s,0.00 MiB,0.00 MiB,2,0,SKIP,SKIP,SKIP
resize/non_uniform,PASS,0.069 s,0.00 MiB,0.00 MiB,6,0,SKIP,SKIP,SKIP
resize/width_only,PASS,0.055 s,0.00 MiB,0.00 MiB,2,0,SKIP,SKIP,SKIP
resize/with_sizes,PASS,0.060 s,0.00 MiB,0.00 MiB,3,0,SKIP,SKIP,SKIP
sigmoid/4d,PASS,0.060 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
sigmoid/after_gemm,PASS,0.059 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
sigmoid/basic,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/2d_basic,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/after_conv,PASS,0.070 s,0.00 MiB,0.01 MiB,7,6,SKIP,SKIP,SKIP
slice/default_axes,PASS,0.066 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/large_channel_1024,PASS,0.064 s,0.01 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/nchw_spatial_crop,PASS,0.055 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/negative_axis,PASS,0.060 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/negative_indices,PASS,0.053 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
slice/step2,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
softmax/3d_last_axis,PASS,0.050 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
softmax/basic,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
softmax/channel_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
softmax/large_dimension_1024,PASS,0.061 s,0.01 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
softmax/negative_axis,PASS,0.058 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
split/basic,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
split/equal_three_way,PASS,0.063 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
split/negative_axis,PASS,0.059 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
split/uneven_channel_axis_4d,PASS,0.061 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
sub/after_gemm,PASS,0.064 s,0.01 MiB,0.01 MiB,5,4,SKIP,SKIP,SKIP
sub/basic,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
sub/broadcast_row,PASS,0.064 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
sub/channel_broadcast_1024,PASS,0.063 s,0.02 MiB,0.01 MiB,1,0,SKIP,SKIP,SKIP
sub/constant_lhs_broadcast,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
sub/leading_dimension_broadcast,PASS,0.054 s,0.00 MiB,0.00 MiB,1,0,SKIP,SKIP,SKIP
1 Operation Result Compile Host mem Cores mem Cores Xbars Latency Power Energy
2 add/after_gemm PASS - 0.063 s 0.01 MiB 0.01 MiB 5 4 0.007784 ms SKIP 104.703618 mW SKIP 815012.960000 pJ SKIP
3 add/basic PASS - 0.057 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
4 add/broadcast_row PASS - 0.057 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
5 add/channel_broadcast_1024 PASS - 0.061 s 0.02 MiB 0.01 MiB 1 0 0.006913 ms SKIP 78.118038 mW SKIP 540030.000000 pJ SKIP
6 add/leading_dimension_broadcast PASS - 0.057 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
7 concat/channel_axis PASS - 0.069 s 0.00 MiB 0.00 MiB 1 0 0.000457 ms SKIP 78.157549 mW SKIP 35718.000000 pJ SKIP
8 concat/negative_axis PASS - 0.061 s 0.00 MiB 0.00 MiB 1 0 0.001043 ms SKIP 78.092042 mW SKIP 81450.000000 pJ SKIP
9 concat/three_inputs_channel_axis PASS - 0.058 s 0.00 MiB 0.00 MiB 1 0 0.000644 ms SKIP 78.149068 mW SKIP 50328.000000 pJ SKIP
10 conv/batch_2 PASS - 0.066 s 0.00 MiB 0.00 MiB 2 2 0.013694 ms SKIP 82.623885 mW SKIP 1131451.480000 pJ SKIP
11 conv/batch_4_pointwise PASS - 0.065 s 0.00 MiB 0.01 MiB 5 4 0.003932 ms SKIP 116.078576 mW SKIP 456420.960000 pJ SKIP
12 conv/conv_1x3x224x224_w64x3x7x7_b64 conv/depthwise_1024_channels PASS - 0.083 s 24.14 MiB 0.19 MiB 61.87 MiB 0.38 MiB 168 129 169 128 38.414551 ms SKIP 185.256473 mW SKIP 7116544212.120002 pJ SKIP
13 conv/depthwise_1024_channels conv/depthwise_grouped PASS - 0.071 s 0.19 MiB 0.01 MiB 0.38 MiB 0.00 MiB 129 5 128 4 0.220751 ms SKIP 178.454307 mW SKIP 39393966.720000 pJ SKIP
14 conv/depthwise_grouped conv/dilated_3x3 PASS - 0.068 s 0.01 MiB 0.00 MiB 0.01 MiB 5 10 4 9 0.006234 ms SKIP 107.776541 mW SKIP 671878.960000 pJ SKIP
15 conv/dilated_3x3 conv/dynamic PASS - 0.065 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 10 5 9 0 0.008713 ms SKIP 118.767263 mW SKIP 1034819.160000 pJ SKIP
16 conv/dynamic conv/explicit_padding PASS - 0.062 s 0.00 MiB 0.01 MiB 0.00 MiB 0.02 MiB 5 17 0 16 0.001835 ms SKIP 92.281199 mW SKIP 169336.000000 pJ SKIP
17 conv/explicit_padding conv/grouped_many_groups PASS - 0.442 s 0.01 MiB 0.05 MiB 0.02 MiB 0.09 MiB 17 65 16 64 0.010007 ms SKIP 145.338047 mW SKIP 1454397.840000 pJ SKIP
18 conv/grouped_many_groups conv/grouped_two_groups PASS - 0.060 s 0.05 MiB 0.00 MiB 0.09 MiB 0.00 MiB 65 3 64 2 0.181897 ms SKIP 142.207471 mW SKIP 25867112.360000 pJ SKIP
19 conv/grouped_two_groups conv/huge_pointwise_1024 PASS - 0.156 s 0.00 MiB 0.01 MiB 0.00 MiB 0.11 MiB 3 73 2 64 0.005361 ms SKIP 101.457653 mW SKIP 543914.480000 pJ SKIP
20 conv/huge_pointwise_1024 conv/huge_pointwise_1024_dynamic PASS - 0.079 s 0.01 MiB 8.04 MiB 0.11 MiB 12.61 MiB 73 168 64 0 0.015615 ms SKIP 249.545140 mW SKIP 3896647.360000 pJ SKIP
21 conv/huge_pointwise_1024_dynamic conv/kernel_3x3 PASS - 0.062 s 8.04 MiB 0.01 MiB 12.61 MiB 0.01 MiB 168 10 0 9 2.627964 ms SKIP 169.518697 mW SKIP 445489032.000000 pJ SKIP
22 conv/kernel_3x3 conv/kernel_equals_input_spatial PASS - 0.064 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 10 2 9 2 0.007186 ms SKIP 123.801859 mW SKIP 889640.160000 pJ SKIP
23 conv/kernel_equals_input_spatial conv/large_input_channels_1x1 PASS - 0.089 s 0.00 MiB 0.01 MiB 0.00 MiB 0.02 MiB 2 9 2 8 0.004639 ms SKIP 89.607562 mW SKIP 415689.480000 pJ SKIP
24 conv/large_input_channels_1x1 conv/large_output_channels_1x1 PASS - 0.098 s 0.01 MiB 0.02 MiB 9 17 8 0.007648 ms SKIP 117.824519 mW SKIP 901121.920000 pJ SKIP
25 conv/large_output_channels_1x1 conv/large_spatial PASS - 0.069 s 0.01 MiB 0.02 MiB 0.04 MiB 17 37 8 36 0.008871 ms SKIP 128.442782 mW SKIP 1139415.920000 pJ SKIP
26 conv/large_spatial conv/multi_channel PASS - 0.066 s 0.01 MiB 0.00 MiB 0.04 MiB 0.00 MiB 37 4 36 3 0.017018 ms SKIP 172.073372 mW SKIP 2928344.640000 pJ SKIP
27 conv/multi_channel conv/non_square_kernel_1x3 PASS - 0.061 s 0.00 MiB 0.00 MiB 4 3 3 2 0.006482 ms SKIP 105.683542 mW SKIP 685040.720000 pJ SKIP
28 conv/non_square_kernel_1x3 conv/non_square_kernel_3x1 PASS - 0.064 s 0.00 MiB 0.00 MiB 3 2 0.006842 ms SKIP 99.349968 mW SKIP 679752.480000 pJ SKIP
29 conv/non_square_kernel_3x1 conv/non_uniform_stride PASS - 0.062 s 0.00 MiB 0.00 MiB 3 4 2 3 0.013484 ms SKIP 95.889683 mW SKIP 1292976.480000 pJ SKIP
30 conv/non_uniform_stride conv/pointwise_1x1 PASS - 0.059 s 0.00 MiB 0.00 MiB 4 1 3 1 0.007601 ms SKIP 104.048772 mW SKIP 790874.720000 pJ SKIP
31 conv/output_channel_grouping_minimal conv/pointwise_tiled_chain PASS - 0.604 s 0.10 MiB 0.01 MiB 0.34 MiB 0.04 MiB 131 20 128 80 0.258453 ms SKIP 170.730913 mW SKIP 44125916.720000 pJ SKIP
32 conv/pointwise_1x1 conv/real_asymmetric_padding PASS - 0.060 s 0.00 MiB 0.01 MiB 0.00 MiB 0.03 MiB 1 29 1 28 0.012303 ms SKIP 80.244188 mW SKIP 987244.240000 pJ SKIP
33 conv/pointwise_tiled_chain conv/relu_conv_store PASS - 0.091 s 0.01 MiB 0.16 MiB 0.04 MiB 0.67 MiB 20 168 80 184 0.041886 ms SKIP 153.880896 mW SKIP 6445455.200000 pJ SKIP
34 conv/real_asymmetric_padding conv/same_lower_3x3 PASS - 0.078 s 0.01 MiB 0.03 MiB 0.02 MiB 29 26 28 25 0.014457 ms SKIP 153.669968 mW SKIP 2221606.720000 pJ SKIP
35 conv/relu_conv_store conv/same_padding_3x3 PASS - 0.070 s 0.16 MiB 0.01 MiB 0.67 MiB 0.02 MiB 168 26 184 25 0.562898 ms SKIP 183.084489 mW SKIP 103057892.800000 pJ SKIP
36 conv/same_lower_3x3 conv/simple PASS - 0.064 s 0.01 MiB 0.00 MiB 0.02 MiB 0.00 MiB 26 1 25 1 0.013331 ms SKIP 166.154752 mW SKIP 2215009.000000 pJ SKIP
37 conv/same_padding_3x3 conv/stride_2 PASS - 0.064 s 0.01 MiB 0.02 MiB 0.00 MiB 26 5 25 4 0.013331 ms SKIP 166.154752 mW SKIP 2215009.000000 pJ SKIP
38 conv/simple conv/with_bias_3x3 PASS - 0.067 s 0.00 MiB 0.00 MiB 0.01 MiB 1 4 1 3 0.004301 ms SKIP 83.833583 mW SKIP 360568.240000 pJ SKIP
39 conv/strategy_depthwise_16 conv/with_constant PASS - 0.070 s 0.06 MiB 0.00 MiB 0.35 MiB 0.00 MiB 168 1 168 1 0.335115 ms SKIP 197.936467 mW SKIP 66331479.080000 pJ SKIP
40 conv/strategy_input_k_tiled conv/without_kernel_shape_attr PASS - 0.069 s 0.08 MiB 0.01 MiB 0.27 MiB 0.01 MiB 109 10 108 9 0.353736 ms SKIP 170.812713 mW SKIP 60422605.920000 pJ SKIP
41 conv/strategy_output_channel_tiled conv/yolo11n_depthwise_head PASS - 1.482 s 0.03 MiB 8.66 MiB 0.16 MiB 34.24 MiB 74 168 72 255 0.091463 ms SKIP 155.743189 mW SKIP 14244739.280000 pJ SKIP
42 conv/strategy_streamed_packed conv/yolo11n_heavy PASS - 0.431 s 3.34 MiB 4.82 MiB 7.89 MiB 19.10 MiB 168 161 168 800 9.353833 ms SKIP 179.858301 mW SKIP 1682364509.560000 pJ SKIP
43 conv/strategy_streamed_patch conv/yolo11n_stem PASS - 0.783 s 0.34 MiB 12.86 MiB 1.32 MiB 37.59 MiB 168 168 488 1.904655 ms SKIP 181.910449 mW SKIP 346476645.640000 pJ SKIP
44 conv/strategy_tiled_2d div/after_gemm PASS - 0.072 s 0.11 MiB 0.01 MiB 0.44 MiB 0.01 MiB 168 5 168 4 0.415594 ms SKIP 182.127047 mW SKIP 75690907.840000 pJ SKIP
45 conv/stride_2 div/basic PASS - 0.061 s 0.01 MiB 0.00 MiB 0.00 MiB 5 1 4 0 0.005237 ms SKIP 110.780019 mW SKIP 580154.960000 pJ SKIP
46 conv/with_bias_3x3 div/channel_broadcast_1024 PASS - 0.066 s 0.00 MiB 0.02 MiB 0.01 MiB 4 1 3 0 0.007452 ms SKIP 104.162738 mW SKIP 776220.720000 pJ SKIP
47 conv/with_constant div/leading_dimension_broadcast PASS - 0.059 s 0.00 MiB 0.00 MiB 1 1 0 0.006622 ms SKIP 81.738182 mW SKIP 541270.240000 pJ SKIP
48 conv/without_kernel_shape_attr div/runtime_scalar_rhs PASS - 0.056 s 0.01 MiB 0.02 MiB 0.01 MiB 10 1 9 0 0.007186 ms SKIP 123.801859 mW SKIP 889640.160000 pJ SKIP
49 conv/yolo11n_depthwise_head div/scalar_constant PASS - 0.073 s 8.66 MiB 0.00 MiB 34.24 MiB 0.00 MiB 168 1 255 0 42.701404 ms SKIP 200.519161 mW SKIP 8562449708.000010 pJ SKIP
50 conv/yolo11n_heavy gather/3d_input_axis1 PASS - 0.060 s 4.82 MiB 0.00 MiB 19.10 MiB 0.00 MiB 161 1 800 0 8.535404 ms SKIP 350.863768 mW SKIP 2994764012.000010 pJ SKIP
51 conv/yolo11n_stem gather/axis0_matrix_indices PASS - 0.056 s 12.86 MiB 0.00 MiB 37.59 MiB 0.00 MiB 168 1 488 0 14.239985 ms SKIP 301.233376 mW SKIP 4289558753.000010 pJ SKIP
52 div/after_gemm gather/axis1 PASS - 0.058 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.007784 ms SKIP 104.703618 mW SKIP 815012.960000 pJ SKIP
53 div/basic gather/negative_axis PASS - 0.058 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
54 div/channel_broadcast_1024 gather/negative_indices PASS - 0.063 s 0.02 MiB 0.00 MiB 0.01 MiB 0.00 MiB 1 0 0.006913 ms SKIP 78.118038 mW SKIP 540030.000000 pJ SKIP
55 div/leading_dimension_broadcast gemm/alpha_beta PASS - 0.067 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 1 5 0 4 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
56 div/runtime_scalar_rhs gemm/bias_rank2_broadcast PASS - 0.060 s 0.02 MiB 0.00 MiB 0.01 MiB 1 5 0 4 0.006913 ms SKIP 78.118038 mW SKIP 540030.000000 pJ SKIP
57 div/scalar_constant gemm/dynamic PASS - 0.064 s 0.00 MiB 0.00 MiB 1 5 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
58 gather/3d_input_axis1 gemm/dynamic_alpha PASS - 0.062 s 0.00 MiB 0.00 MiB 1 5 0 0.000589 ms SKIP 78.081494 mW SKIP 45990.000000 pJ SKIP
59 gather/axis0_matrix_indices gemm/dynamic_beta PASS - 0.060 s 0.00 MiB 0.00 MiB 1 5 0 0.000697 ms SKIP 78.068867 mW SKIP 54414.000000 pJ SKIP
60 gather/axis1 gemm/dynamic_bias PASS - 0.058 s 0.00 MiB 0.00 MiB 1 5 0 0.000801 ms SKIP 78.059925 mW SKIP 62526.000000 pJ SKIP
61 gather/negative_axis gemm/dynamic_bias_alpha_beta PASS - 0.067 s 0.00 MiB 0.00 MiB 1 5 0 0.001437 ms SKIP 78.033403 mW SKIP 112134.000000 pJ SKIP
62 gather/negative_indices gemm/dynamic_transB PASS - 0.062 s 0.00 MiB 0.00 MiB 1 5 0 0.000376 ms SKIP 78.127660 mW SKIP 29376.000000 pJ SKIP
63 gemm/alpha_beta gemm/huge_1024 PASS - 0.147 s 0.01 MiB 0.01 MiB 0.10 MiB 5 73 4 64 0.007456 ms SKIP 105.272125 mW SKIP 784908.960000 pJ SKIP
64 gemm/bias_rank2_broadcast gemm/large PASS - 0.068 s 0.00 MiB 0.02 MiB 0.01 MiB 0.03 MiB 5 17 4 16 0.007072 ms SKIP 105.979208 mW SKIP 749484.960000 pJ SKIP
65 gemm/dynamic gemm/large_k_small_n PASS - 0.095 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 5 9 0 8 0.002421 ms SKIP 91.480793 mW SKIP 221475.000000 pJ SKIP
66 gemm/dynamic_alpha gemm/non_square PASS - 0.063 s 0.00 MiB 0.00 MiB 0.01 MiB 5 0 4 0.003262 ms SKIP 91.415696 mW SKIP 298198.000000 pJ SKIP
67 gemm/dynamic_beta gemm/scalar_bias PASS - 0.060 s 0.00 MiB 0.00 MiB 0.01 MiB 5 0 4 0.004365 ms SKIP 91.316151 mW SKIP 398595.000000 pJ SKIP
68 gemm/dynamic_bias gemm/simple PASS - 0.072 s 0.00 MiB 0.03 MiB 0.00 MiB 0.08 MiB 5 42 0 40 0.002665 ms SKIP 91.445779 mW SKIP 243703.000000 pJ SKIP
69 gemm/dynamic_bias_alpha_beta gemm/small PASS - 0.065 s 0.00 MiB 0.00 MiB 5 2 0 2 0.005629 ms SKIP 91.279268 mW SKIP 513811.000000 pJ SKIP
70 gemm/dynamic_transB gemm/small_k_large_n PASS - 0.097 s 0.00 MiB 0.01 MiB 0.00 MiB 0.02 MiB 5 17 0 8 0.001301 ms SKIP 91.378171 mW SKIP 118883.000000 pJ SKIP
71 gemm/huge_1024 gemm/transA PASS - 0.064 s 0.01 MiB 0.00 MiB 0.10 MiB 0.01 MiB 73 5 64 4 0.017522 ms SKIP 215.037402 mW SKIP 3767885.360000 pJ SKIP
72 gemm/large gemm/transA_transB PASS - 0.069 s 0.02 MiB 0.00 MiB 0.03 MiB 0.01 MiB 17 5 16 4 0.011229 ms SKIP 140.152181 mW SKIP 1573768.840000 pJ SKIP
73 gemm/large_k_small_n gemm/transB PASS - 0.062 s 0.01 MiB 0.00 MiB 0.01 MiB 9 5 8 4 0.004748 ms SKIP 133.481449 mW SKIP 633769.920000 pJ SKIP
74 gemm/non_square gemm/transB_with_bias PASS - 0.055 s 0.00 MiB 0.01 MiB 0.01 MiB 5 4 0.003527 ms SKIP 118.958310 mW SKIP 419565.960000 pJ SKIP
75 gemm/scalar_bias gemm/with_bias PASS - 0.067 s 0.00 MiB 0.01 MiB 0.01 MiB 5 4 0.007072 ms SKIP 105.979208 mW SKIP 749484.960000 pJ SKIP
76 gemm/simple gemv/constant PASS - 0.064 s 0.03 MiB 0.00 MiB 0.08 MiB 0.00 MiB 42 0 40 0 0.021640 ms SKIP 151.774196 mW SKIP 3284393.600000 pJ SKIP
77 gemm/small gemv/simple PASS - 0.069 s 0.00 MiB 0.00 MiB 0.01 MiB 2 6 2 4 0.004420 ms SKIP 90.144000 mW SKIP 398436.480000 pJ SKIP
78 gemm/small_k_large_n gemv/with_heterogeneous_constant PASS - 0.066 s 0.01 MiB 0.00 MiB 0.02 MiB 0.01 MiB 17 6 8 4 0.007962 ms SKIP 131.005014 mW SKIP 1043061.920000 pJ SKIP
79 gemm/transA gemv/with_homogeneous_constant PASS - 0.070 s 0.00 MiB 0.01 MiB 5 6 4 0.005762 ms SKIP 109.140743 mW SKIP 628868.960000 pJ SKIP
80 gemm/transA_transB gemv/with_scalar_constant PASS - 0.070 s 0.00 MiB 0.01 MiB 5 6 4 0.005762 ms SKIP 109.140743 mW SKIP 628868.960000 pJ SKIP
81 gemm/transB matmul/basic PASS - 0.062 s 0.00 MiB 0.01 MiB 0.00 MiB 5 2 4 2 0.003527 ms SKIP 118.958310 mW SKIP 419565.960000 pJ SKIP
82 gemm/transB_with_bias matmul/batched_3d PASS - 0.066 s 0.01 MiB 0.00 MiB 0.01 MiB 5 4 0.005046 ms SKIP 110.546762 mW SKIP 557818.960000 pJ SKIP
83 gemm/with_bias matmul/batched_3d_dynamic PASS - 0.057 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 5 4 4 0 0.005562 ms SKIP 108.767882 mW SKIP 604966.960000 pJ SKIP
84 gemv/constant matmul/batched_left_constant PASS - 0.070 s 0.00 MiB 0.00 MiB 0.02 MiB 0 9 0 8 0.000000 ms SKIP 2.000000 mW SKIP 0.000000 pJ SKIP
85 gemv/simple matmul/batched_lhs_broadcast PASS - 0.063 s 0.00 MiB 0.01 MiB 6 5 4 0.005160 ms SKIP 111.150380 mW SKIP 573535.960000 pJ SKIP
86 gemv/with_heterogeneous_constant matmul/batched_rhs_broadcast PASS - 0.062 s 0.00 MiB 0.01 MiB 6 5 4 0.005549 ms SKIP 109.816536 mW SKIP 609371.960000 pJ SKIP
87 gemv/with_homogeneous_constant matmul/dynamic PASS - 0.060 s 0.00 MiB 0.01 MiB 0.00 MiB 6 5 4 0 0.005549 ms SKIP 109.816536 mW SKIP 609371.960000 pJ SKIP
88 gemv/with_scalar_constant matmul/huge_1024 PASS - 0.145 s 0.00 MiB 0.01 MiB 0.01 MiB 0.10 MiB 6 73 4 64 0.005549 ms SKIP 109.816536 mW SKIP 609371.960000 pJ SKIP
89 matmul/basic matmul/left_constant PASS - 0.051 s 0.00 MiB 0.00 MiB 0.01 MiB 2 5 2 4 0.004420 ms SKIP 90.144000 mW SKIP 398436.480000 pJ SKIP
90 matmul/batched_3d matmul/matrix_vector PASS - 0.095 s 0.00 MiB 0.52 MiB 0.01 MiB 0.78 MiB 5 168 4 173 0.005958 ms SKIP 108.588949 mW SKIP 646972.960000 pJ SKIP
91 matmul/batched_3d_dynamic matmul/vector_matrix PASS - 0.087 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 4 9 0 8 0.001822 ms SKIP 92.192645 mW SKIP 167975.000000 pJ SKIP
92 matmul/batched_left_constant matmul/yolo_attention PASS - 0.385 s 0.00 MiB 1.02 MiB 0.02 MiB 43.44 MiB 9 168 8 0 0.008822 ms SKIP 114.385164 mW SKIP 1009105.920000 pJ SKIP
93 matmul/batched_lhs_broadcast mul/after_conv PASS - 0.055 s 0.00 MiB 0.01 MiB 0.00 MiB 5 4 4 3 0.005681 ms SKIP 109.389361 mW SKIP 621440.960000 pJ SKIP
94 matmul/batched_rhs_broadcast mul/basic PASS - 0.055 s 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.005958 ms SKIP 108.588949 mW SKIP 646972.960000 pJ SKIP
95 matmul/dynamic mul/channel_broadcast_1024 PASS - 0.058 s 0.00 MiB 0.02 MiB 0.00 MiB 0.01 MiB 5 1 0 0.001621 ms SKIP 91.421962 mW SKIP 148195.000000 pJ SKIP
96 matmul/huge_1024 mul/leading_dimension_broadcast PASS - 0.059 s 0.01 MiB 0.00 MiB 0.10 MiB 0.00 MiB 73 1 64 0 0.017522 ms SKIP 215.037402 mW SKIP 3767885.360000 pJ SKIP
97 matmul/left_constant mul/scalar_constant PASS - 0.056 s 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.005853 ms SKIP 108.861944 mW SKIP 637168.960000 pJ SKIP
98 matmul/matrix_vector pool/avg_basic PASS - 0.063 s 0.52 MiB 0.00 MiB 0.78 MiB 0.00 MiB 168 1 173 0 0.384660 ms SKIP 202.131271 mW SKIP 77751814.880000 pJ SKIP
99 matmul/vector_matrix pool/avg_ceil_mode PASS - 0.063 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 9 1 8 0 0.007409 ms SKIP 118.680243 mW SKIP 879301.920000 pJ SKIP
100 matmul/yolo_attention pool/avg_explicit_padding PASS - 0.061 s 1.02 MiB 0.00 MiB 43.44 MiB 0.00 MiB 168 1 0 8.151445 ms SKIP 170.003707 mW SKIP 1385775865.000000 pJ SKIP
101 mul/after_conv pool/avg_include_pad PASS - 0.049 s 0.00 MiB 0.00 MiB 4 1 3 0 0.005453 ms SKIP 107.639046 mW SKIP 586955.720000 pJ SKIP
102 mul/after_conv_scalar_constant pool/avg_large_channels PASS - 0.059 s 0.00 MiB 0.04 MiB 0.00 MiB 0.02 MiB 4 1 3 0 0.005453 ms SKIP 107.639046 mW SKIP 586955.720000 pJ SKIP
103 mul/basic pool/avg_non_uniform_stride PASS - 0.066 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
104 mul/channel_broadcast_1024 pool/avg_real_asymmetric_padding PASS - 0.055 s 0.02 MiB 0.00 MiB 0.01 MiB 0.00 MiB 1 0 0.006913 ms SKIP 78.118038 mW SKIP 540030.000000 pJ SKIP
105 mul/leading_dimension_broadcast pool/max_after_conv PASS - 0.069 s 0.00 MiB 0.00 MiB 1 5 0 4 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
106 mul/scalar_constant pool/max_basic PASS - 0.064 s 0.00 MiB 0.00 MiB 1 0 0.000323 ms SKIP 78.222910 mW SKIP 25266.000000 pJ SKIP
107 pool/avg_basic pool/max_ceil_mode PASS - 0.058 s 0.00 MiB 0.00 MiB 1 0 0.011939 ms SKIP 78.022112 mW SKIP 931506.000000 pJ SKIP
108 pool/avg_ceil_mode pool/max_global_style_kernel_equals_input PASS - 0.063 s 0.00 MiB 0.00 MiB 1 0 0.004359 ms SKIP 78.033035 mW SKIP 340146.000000 pJ SKIP
109 pool/avg_explicit_padding pool/max_non_square_kernel PASS - 0.067 s 0.00 MiB 0.00 MiB 1 0 0.008822 ms SKIP 78.027205 mW SKIP 688356.000000 pJ SKIP
110 pool/avg_include_pad pool/max_real_asymmetric_padding PASS - 0.063 s 0.00 MiB 0.00 MiB 1 0 0.008506 ms SKIP 78.016929 mW SKIP 663612.000000 pJ SKIP
111 pool/avg_large_channels pool/max_same_upper PASS - 0.061 s 0.04 MiB 0.00 MiB 0.02 MiB 0.00 MiB 1 0 0.235874 ms SKIP 78.004172 mW SKIP 18399156.000000 pJ SKIP
112 pool/avg_non_uniform_stride pool/max_stride2_multichannel PASS - 0.076 s 0.00 MiB 0.00 MiB 1 0 0.014513 ms SKIP 78.016537 mW SKIP 1132254.000000 pJ SKIP
113 pool/avg_real_asymmetric_padding reduce_mean/4d_spatial PASS - 0.058 s 0.00 MiB 0.00 MiB 1 3 0 0.025206 ms SKIP 78.024756 mW SKIP 1966692.000000 pJ SKIP
114 pool/max_after_conv reduce_mean/4d_spatial_keepdims_0 PASS - 0.068 s 0.00 MiB 0.00 MiB 5 4 4 0 0.012215 ms SKIP 99.115019 mW SKIP 1210689.960000 pJ SKIP
115 pool/max_basic reduce_mean/after_conv PASS - 0.067 s 0.00 MiB 0.00 MiB 1 5 0 3 0.004160 ms SKIP 78.063462 mW SKIP 324744.000000 pJ SKIP
116 pool/max_ceil_mode reduce_mean/all_axes_keepdims_0 PASS - 0.057 s 0.00 MiB 0.00 MiB 1 2 0 0.001940 ms SKIP 78.074227 mW SKIP 151464.000000 pJ SKIP
117 pool/max_global_style_kernel_equals_input reduce_mean/all_axes_keepdims_1 PASS - 0.053 s 0.00 MiB 0.00 MiB 1 0 0.008443 ms SKIP 78.008528 mW SKIP 658626.000000 pJ SKIP
118 pool/max_non_square_kernel reduce_mean/basic PASS - 0.058 s 0.00 MiB 0.00 MiB 1 4 0 0.013626 ms SKIP 78.017613 mW SKIP 1063068.000000 pJ SKIP
119 pool/max_real_asymmetric_padding reduce_mean/channel_axis_nchw PASS - 0.063 s 0.00 MiB 0.03 MiB 0.00 MiB 0.02 MiB 1 4 0 0.010444 ms SKIP 78.034470 mW SKIP 814992.000000 pJ SKIP
120 pool/max_same_upper reduce_mean/keepdims_0 PASS - 0.064 s 0.00 MiB 0.00 MiB 1 5 0 0.008010 ms SKIP 78.035955 mW SKIP 625068.000000 pJ SKIP
121 pool/max_stride2_multichannel reduce_mean/large_dimension_1024 PASS - 0.066 s 0.00 MiB 0.01 MiB 0.00 MiB 1 0 0.015987 ms SKIP 78.018015 mW SKIP 1247274.000000 pJ SKIP
122 reduce_mean/4d_spatial reduce_mean/legacy_axes_1_2_keepdims_1 PASS - 0.069 s 0.00 MiB 0.00 MiB 3 2 0 0.000321 ms SKIP 92.448598 mW SKIP 29676.000000 pJ SKIP
123 reduce_mean/4d_spatial_keepdims_0 reduce_mean/legacy_axis1_keepdims_0 PASS - 0.067 s 0.00 MiB 0.00 MiB 4 9 0 0.000655 ms SKIP 94.352672 mW SKIP 61801.000000 pJ SKIP
124 reduce_mean/after_conv reduce_mean/legacy_axis1_keepdims_1 PASS - 0.057 s 0.00 MiB 0.00 MiB 5 8 3 0 0.005342 ms SKIP 106.951089 mW SKIP 571332.720000 pJ SKIP
125 reduce_mean/all_axes_keepdims_0 reduce_mean/legacy_empty_axes_noop PASS - 0.058 s 0.00 MiB 0.00 MiB 2 1 0 0.000391 ms SKIP 79.237852 mW SKIP 30982.000000 pJ SKIP
126 reduce_mean/all_axes_keepdims_1 reduce_mean/legacy_nchw_spatial PASS - 0.059 s 0.00 MiB 0.00 MiB 1 3 0 0.000221 ms SKIP 78.217195 mW SKIP 17286.000000 pJ SKIP
127 reduce_mean/basic reduce_mean/legacy_negative_axis PASS - 0.052 s 0.00 MiB 0.00 MiB 4 6 0 0.000373 ms SKIP 93.514745 mW SKIP 34881.000000 pJ SKIP
128 reduce_mean/channel_axis_nchw reduce_mean/legacy_reduce_all_keepdims_1 PASS - 0.057 s 0.03 MiB 0.00 MiB 0.02 MiB 0.00 MiB 4 1 0 0.164926 ms SKIP 93.596631 mW SKIP 15436518.000000 pJ SKIP
129 reduce_mean/keepdims_0 reduce_mean/negative_axis PASS - 0.055 s 0.00 MiB 0.00 MiB 5 6 0 0.000748 ms SKIP 91.401070 mW SKIP 68368.000000 pJ SKIP
130 reduce_mean/large_dimension_1024 relu/4d PASS - 0.059 s 0.01 MiB 0.00 MiB 0.00 MiB 1 0 0.002785 ms SKIP 78.017235 mW SKIP 217278.000000 pJ SKIP
131 reduce_mean/legacy_axes_1_2_keepdims_1 relu/after_conv PASS - 0.062 s 0.00 MiB 0.00 MiB 2 4 0 3 0.000271 ms SKIP 79.354244 mW SKIP 21505.000000 pJ SKIP
132 reduce_mean/legacy_axis1_keepdims_0 relu/after_gemm PASS - 0.062 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 9 5 0 4 0.001986 ms SKIP 92.501511 mW SKIP 183708.000000 pJ SKIP
133 reduce_mean/legacy_axis1_keepdims_1 relu/basic PASS - 0.062 s 0.00 MiB 0.00 MiB 8 1 0 0.001373 ms SKIP 94.559359 mW SKIP 129830.000000 pJ SKIP
134 reduce_mean/legacy_empty_axes_noop reshape/4d_to_2d_flatten PASS - 0.059 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms SKIP 78.217195 mW SKIP 17286.000000 pJ SKIP
135 reduce_mean/legacy_nchw_spatial reshape/infer_dim_minus_one PASS - 0.059 s 0.00 MiB 0.00 MiB 3 1 0 0.000321 ms SKIP 92.448598 mW SKIP 29676.000000 pJ SKIP
136 reduce_mean/legacy_negative_axis reshape/same_rank PASS - 0.056 s 0.00 MiB 0.00 MiB 6 1 0 0.000553 ms SKIP 93.520796 mW SKIP 51717.000000 pJ SKIP
137 reduce_mean/legacy_reduce_all_keepdims_1 reshape/zero_copies_input_dim PASS - 0.077 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms SKIP 78.217195 mW SKIP 17286.000000 pJ SKIP
138 reduce_mean/negative_axis resize/height_only PASS - 0.059 s 0.00 MiB 0.00 MiB 6 4 0 0.000553 ms SKIP 93.520796 mW SKIP 51717.000000 pJ SKIP
139 relu/4d resize/nearest_2x PASS - 0.066 s 0.00 MiB 0.00 MiB 1 4 0 0.000521 ms SKIP 78.184261 mW SKIP 40734.000000 pJ SKIP
140 relu/after_conv resize/nearest_downsample PASS - 0.062 s 0.00 MiB 0.00 MiB 4 2 3 0 0.005352 ms SKIP 107.891951 mW SKIP 577437.720000 pJ SKIP
141 relu/after_gemm resize/non_uniform PASS - 0.069 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 5 6 4 0 0.007513 ms SKIP 105.158653 mW SKIP 790056.960000 pJ SKIP
142 relu/basic resize/width_only PASS - 0.055 s 0.00 MiB 0.00 MiB 1 2 0 0.000221 ms SKIP 78.217195 mW SKIP 17286.000000 pJ SKIP
143 reshape/4d_to_2d_flatten resize/with_sizes PASS - 0.060 s 0.00 MiB 0.00 MiB 1 3 0 0.000258 ms SKIP 78.279070 mW SKIP 20196.000000 pJ SKIP
144 reshape/infer_dim_minus_one sigmoid/4d PASS - 0.060 s 0.00 MiB 0.00 MiB 1 0 0.000162 ms SKIP 78.296296 mW SKIP 12684.000000 pJ SKIP
145 reshape/same_rank sigmoid/after_gemm PASS - 0.059 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 1 5 0 4 0.000162 ms SKIP 78.296296 mW SKIP 12684.000000 pJ SKIP
146 reshape/zero_copies_input_dim sigmoid/basic PASS - 0.053 s 0.00 MiB 0.00 MiB 1 0 0.000162 ms SKIP 78.296296 mW SKIP 12684.000000 pJ SKIP
147 resize/height_only slice/2d_basic PASS - 0.058 s 0.00 MiB 0.00 MiB 4 1 0 0.000693 ms SKIP 93.554113 mW SKIP 64833.000000 pJ SKIP
148 resize/nearest_2x slice/after_conv PASS - 0.070 s 0.00 MiB 0.00 MiB 0.01 MiB 4 7 0 6 0.001173 ms SKIP 93.572890 mW SKIP 109761.000000 pJ SKIP
149 resize/nearest_downsample slice/default_axes PASS - 0.066 s 0.00 MiB 0.00 MiB 2 1 0 0.000427 ms SKIP 79.449649 mW SKIP 33925.000000 pJ SKIP
150 resize/non_uniform slice/large_channel_1024 PASS - 0.064 s 0.00 MiB 0.01 MiB 0.00 MiB 6 1 0 0.001753 ms SKIP 93.575014 mW SKIP 164037.000000 pJ SKIP
151 resize/width_only slice/nchw_spatial_crop PASS - 0.055 s 0.00 MiB 0.00 MiB 2 1 0 0.000667 ms SKIP 79.503748 mW SKIP 53029.000000 pJ SKIP
152 resize/with_sizes slice/negative_axis PASS - 0.060 s 0.00 MiB 0.00 MiB 3 1 0 0.000797 ms SKIP 92.542033 mW SKIP 73756.000000 pJ SKIP
153 sigmoid/4d slice/negative_indices PASS - 0.053 s 0.00 MiB 0.00 MiB 1 0 0.000521 ms SKIP 78.184261 mW SKIP 40734.000000 pJ SKIP
154 sigmoid/after_gemm slice/step2 PASS - 0.058 s 0.01 MiB 0.00 MiB 0.01 MiB 0.00 MiB 5 1 4 0 0.007513 ms SKIP 105.158653 mW SKIP 790056.960000 pJ SKIP
155 sigmoid/basic softmax/3d_last_axis PASS - 0.050 s 0.00 MiB 0.00 MiB 1 0 0.000221 ms SKIP 78.217195 mW SKIP 17286.000000 pJ SKIP
156 slice/2d_basic softmax/basic PASS - 0.061 s 0.00 MiB 0.00 MiB 1 0 0.000242 ms SKIP 78.297521 mW SKIP 18948.000000 pJ SKIP
157 slice/after_conv softmax/channel_axis PASS - 0.058 s 0.00 MiB 0.01 MiB 0.00 MiB 7 1 6 0 0.011296 ms SKIP 118.190765 mW SKIP 1335082.880000 pJ SKIP
158 slice/default_axes softmax/large_dimension_1024 PASS - 0.061 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 1 0 0.000242 ms SKIP 78.297521 mW SKIP 18948.000000 pJ SKIP
159 slice/large_channel_1024 softmax/negative_axis PASS - 0.058 s 0.01 MiB 0.00 MiB 0.00 MiB 1 0 0.002832 ms SKIP 78.144068 mW SKIP 221304.000000 pJ SKIP
160 slice/nchw_spatial_crop split/basic PASS - 0.059 s 0.00 MiB 0.00 MiB 1 0 0.001302 ms SKIP 78.239631 mW SKIP 101868.000000 pJ SKIP
161 slice/negative_axis split/equal_three_way PASS - 0.063 s 0.00 MiB 0.00 MiB 1 0 0.000562 ms SKIP 78.298932 mW SKIP 44004.000000 pJ SKIP
162 slice/negative_indices split/negative_axis PASS - 0.059 s 0.00 MiB 0.00 MiB 1 0 0.000322 ms SKIP 78.298137 mW SKIP 25212.000000 pJ SKIP
163 slice/step2 split/uneven_channel_axis_4d PASS - 0.061 s 0.00 MiB 0.00 MiB 1 0 0.002042 ms SKIP 78.293830 mW SKIP 159876.000000 pJ SKIP
164 softmax/3d_last_axis sub/after_gemm PASS - 0.064 s 0.00 MiB 0.01 MiB 0.00 MiB 0.01 MiB 1 5 0 4 UNSUPPORTED SKIP UNSUPPORTED SKIP UNSUPPORTED SKIP
165 softmax/basic sub/basic PASS - 0.054 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED SKIP UNSUPPORTED SKIP UNSUPPORTED SKIP
166 softmax/channel_axis sub/broadcast_row PASS - 0.064 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED SKIP UNSUPPORTED SKIP UNSUPPORTED SKIP
167 softmax/large_dimension_1024 sub/channel_broadcast_1024 PASS - 0.063 s 0.01 MiB 0.02 MiB 0.01 MiB 1 0 UNSUPPORTED SKIP UNSUPPORTED SKIP UNSUPPORTED SKIP
168 softmax/negative_axis sub/constant_lhs_broadcast PASS - 0.054 s 0.00 MiB 0.00 MiB 1 0 UNSUPPORTED SKIP UNSUPPORTED SKIP UNSUPPORTED SKIP
169 split/basic sub/leading_dimension_broadcast PASS - 0.054 s 0.00 MiB 0.00 MiB 1 0 0.000403 ms SKIP 78.297767 mW SKIP 31554.000000 pJ SKIP
split/equal_three_way PASS - 0.00 MiB 0.00 MiB 1 0 0.000564 ms 78.297872 mW 44160.000000 pJ
split/negative_axis PASS - 0.00 MiB 0.00 MiB 1 0 0.001083 ms 78.288089 mW 84786.000000 pJ
split/uneven_channel_axis_4d PASS - 0.00 MiB 0.00 MiB 1 0 0.000242 ms 78.297521 mW 18948.000000 pJ
sub/after_gemm PASS - 0.01 MiB 0.01 MiB 5 4 0.007784 ms 104.703618 mW 815012.960000 pJ
sub/basic PASS - 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
sub/broadcast_row PASS - 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
sub/channel_broadcast_1024 PASS - 0.02 MiB 0.01 MiB 1 0 0.006913 ms 78.118038 mW 540030.000000 pJ
sub/constant_lhs_broadcast PASS - 0.00 MiB 0.00 MiB 1 0 0.000322 ms 78.223602 mW 25188.000000 pJ
sub/leading_dimension_broadcast PASS - 0.00 MiB 0.00 MiB 1 0 0.000323 ms 78.222910 mW 25266.000000 pJ
@@ -1,182 +0,0 @@
#!/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()