Optimize matrix-mul output-format fix.
Closes #2185
Complexity analysis
Tiny improvement from 137.112 WMOPS to 135.414 WMOPS: this bit-exact optimisation simplifies the output-matrix format-fix in case of matrices with all zeros.
Before:
--- Complexity analysis [WMOPS] ---
|------ SELF ------| |--- CUMULATIVE ---|
routine calls min max avg min max avg
--------------- ------ ------ ------ ------ ------ ------ ------
ivas_jbm_dec_tc 1.00 1.891 1.915 1.915 26.345 38.997 29.507
ivas_spar_decode 1.00 1.010 1.041 1.019 2.544 2.684 2.628
ivas_spar_dec_MD 1.00 1.526 1.665 1.609 1.526 1.665 1.609
ivas_sce_dec 1.00 0.246 0.246 0.246 21.794 34.495 24.964
ivas_core_dec 1.00 3.152 11.390 7.909 21.548 34.249 24.718
acelp_core_dec 0.61 12.830 19.132 14.543 12.830 19.132 14.543
ivas_dec_prepare_renderer 1.00 7.068 8.724 7.173 7.068 8.724 7.173
ivas_dec_render 1.00 76.072 86.740 86.254 80.223 90.998 90.512
ivas_sba_prototype_renderer 4.00 3.922 4.258 4.258 3.922 4.258 4.258
stereo_tcx_core_dec 0.39 17.651 31.015 20.324 17.651 31.015 20.324
--------------- ------ ------ ------ ------
total 1000.00 118.691 137.112 127.192
After:
--- Complexity analysis [WMOPS] ---
|------ SELF ------| |--- CUMULATIVE ---|
routine calls min max avg min max avg
--------------- ------ ------ ------ ------ ------ ------ ------
ivas_jbm_dec_tc 1.00 1.891 1.915 1.915 26.345 38.997 29.507
ivas_spar_decode 1.00 1.010 1.041 1.019 2.544 2.684 2.628
ivas_spar_dec_MD 1.00 1.526 1.665 1.609 1.526 1.665 1.609
ivas_sce_dec 1.00 0.246 0.246 0.246 21.794 34.495 24.964
ivas_core_dec 1.00 3.152 11.390 7.909 21.548 34.249 24.718
acelp_core_dec 0.61 12.830 19.132 14.543 12.830 19.132 14.543
ivas_dec_prepare_renderer 1.00 7.068 8.724 7.173 7.068 8.724 7.173
ivas_dec_render 1.00 73.425 85.042 84.551 77.576 89.300 88.809
ivas_sba_prototype_renderer 4.00 3.922 4.258 4.258 3.922 4.258 4.258
stereo_tcx_core_dec 0.39 17.651 31.015 20.324 17.651 31.015 20.324
--------------- ------ ------ ------ ------
total 1000.00 116.044 135.414 125.489
Edited by Nicolas Roussin