Skip to content

mc: Add 6-tap put/prep implementation to C code

Nathan E. Egge requested to merge unlord/dav1d:6tap into master
This commit adds C implementations of 6-tap motion compensation filters
 for 4 of the 9 separable configurations that do not contain SHARP e.g.
 REGULAR_REGULAR, REGULAR_SMOOTH, SMOOTH_REGULAR AND SMOOTH_SMOOTH.
Ideally this would have no impact on binary size as meson defaults to
 -Dtrim_dsp=true which uses dead code elimination to remove the C code.
However, the allowed CPU instructions are SSE2 for x86 and NEON for arm
 and SSE2 mc routines were removed in 85c1639 while arm has never had
 SIMD for any of the scaled functions, thus the C routines are included.
Also, on riscv and ppc architectures there are *only* C implementations
 and the 6-tap routines provide a meaningful speed-up when decoding the
 600 frame Bosphorus_1080p_8bit.ivf file described in e51f437:

                          Before     After     Delta

  SpacemiT K1 (riscv64)   137.534   114.116   -17.03%
   IBM Power9 (ppc64le)    11.156     9.541   -14.48%

Grouping routines by type and bitdepth, this commit gives the following
 average C function improvements across all supported architectures:

                     x86_64   aarch64   riscv64   ppc64le   loong64

        put_8bpc    -19.47%   -13.02%   -17.10%   -17.96%   -16.58%
        put_16bpc   -17.67%   -15.40%   -18.24%   -17.03%   -17.18%
       prep_8bpc    -20.49%   -14.29%   -17.06%   -17.70%   -20.96%
       prep_16bpc   -20.39%   -16.28%   -16.34%   -17.52%   -21.50%
 put_scaled_8bpc    -23.17%    -9.89%   -16.85%   -26.68%   -16.78%
 put_scaled_16bpc   -14.00%    -9.20%   -22.03%   -22.26%   -19.75%
prep_scaled_8bpc    -21.96%   -26.17%   -21.29%   -24.78%   -23.14%
prep_scaled_16bpc   -17.63%   -24.34%   -21.27%   -22.86%   -24.74%

The additional size in bytes for the added 8bpc and 16bpc functions are:

        put_6tap_c   14629      6552      1738      6576      6708
       prep_6tap_c   14027      6240      1584      6440      6592
 put_6tap_scaled_c    4577       768      1726      3900      4536
prep_6tap_scaled_c    3525      1484      1658      3020      3156

        put_6tap_c   11996      4856      1884      6496      7056
       prep_6tap_c   11424      4420      1698      5936      6072
 put_6tap_scaled_c    4890       892      1954      4068      4604
prep_6tap_scaled_c    3861      1740      2060      3276      3444

             Total   68929     26952     14302     39712     42168

Comparing the size of the stripped libdav1d.so.7.0.0 binary with default
 meson configuration and dead code elimination gives:

           Before  1984440    731384    542528   1181864   1231168
            After  2058168    739576    558912   1181864   1280320

             Delta   73728     8192     16384          0     49152

i7-1370P (x86_64)                                 Old      New    Delta

mc_8tap_regular_w2_0_8bpc_c                      148.8     73.3  -50.74%
mc_8tap_regular_w2_h_8bpc_c                      234.9    138.8  -40.91%
mc_8tap_regular_w2_hv_8bpc_c                     357.9    296.5  -17.16%
mc_8tap_regular_w2_v_8bpc_c                      201.2    139.9  -30.47%
mc_8tap_regular_w4_0_8bpc_c                       60.2     60.8    1.00%
mc_8tap_regular_w4_h_8bpc_c                      280.8    233.6  -16.81%
mc_8tap_regular_w4_hv_8bpc_c                     643.9    496.3  -22.92%
mc_8tap_regular_w4_v_8bpc_c                      279.3    250.7  -10.24%
mc_8tap_regular_w8_0_8bpc_c                       57.2     60.0    4.90%
mc_8tap_regular_w8_h_8bpc_c                      633.1    483.3  -23.66%
mc_8tap_regular_w8_hv_8bpc_c                    1229.1    981.6  -20.14%
mc_8tap_regular_w8_v_8bpc_c                      680.8    502.3  -26.22%
mc_8tap_regular_w16_0_8bpc_c                      73.4     74.9    2.04%
mc_8tap_regular_w16_h_8bpc_c                     847.3    674.9  -20.35%
mc_8tap_regular_w16_hv_8bpc_c                   1542.1   1128.0  -26.85%
mc_8tap_regular_w16_v_8bpc_c                     864.5    693.7  -19.76%
mc_8tap_regular_w32_0_8bpc_c                      98.4     92.7   -5.79%
mc_8tap_regular_w32_h_8bpc_c                    2236.2   1717.5  -23.20%
mc_8tap_regular_w32_hv_8bpc_c                   4150.4   3029.4  -27.01%
mc_8tap_regular_w32_v_8bpc_c                    2265.0   1770.7  -21.82%
mc_8tap_regular_w64_0_8bpc_c                     164.0    156.2   -4.76%
mc_8tap_regular_w64_h_8bpc_c                    7175.5   5533.5  -22.88%
mc_8tap_regular_w64_hv_8bpc_c                  13422.8   9825.5  -26.80%
mc_8tap_regular_w64_v_8bpc_c                    7211.2   5612.9  -22.16%
mc_8tap_regular_w128_0_8bpc_c                    308.7    309.7    0.32%
mc_8tap_regular_w128_h_8bpc_c                  19191.0  14826.7  -22.74%
mc_8tap_regular_w128_hv_8bpc_c                 36391.9  26199.9  -28.01%
mc_8tap_regular_w128_v_8bpc_c                  19192.8  14976.0  -21.97%

mc_8tap_regular_w2_0_16bpc_c                      94.0     76.6  -18.51%
mc_8tap_regular_w2_h_16bpc_c                     156.0    125.6  -19.49%
mc_8tap_regular_w2_hv_16bpc_c                    343.7    306.2  -10.91%
mc_8tap_regular_w2_v_16bpc_c                     184.6    129.9  -29.63%
mc_8tap_regular_w4_0_16bpc_c                      64.7     62.2   -3.86%
mc_8tap_regular_w4_h_16bpc_c                     282.9    211.1  -25.38%
mc_8tap_regular_w4_hv_16bpc_c                    669.1    506.3  -24.33%
mc_8tap_regular_w4_v_16bpc_c                     280.8    212.8  -24.22%
mc_8tap_regular_w8_0_16bpc_c                      62.0     61.0   -1.61%
mc_8tap_regular_w8_h_16bpc_c                     534.0    393.1  -26.39%
mc_8tap_regular_w8_hv_16bpc_c                   1071.7    814.9  -23.96%
mc_8tap_regular_w8_v_16bpc_c                     527.8    390.9  -25.94%
mc_8tap_regular_w16_0_16bpc_c                     73.5     74.6    1.50%
mc_8tap_regular_w16_h_16bpc_c                   1707.6   1361.5  -20.27%
mc_8tap_regular_w16_hv_16bpc_c                  2518.9   1852.3  -26.46%
mc_8tap_regular_w16_v_16bpc_c                   1751.4   1391.7  -20.54%
mc_8tap_regular_w32_0_16bpc_c                    101.3    102.2    0.89%
mc_8tap_regular_w32_h_16bpc_c                   5128.2   3983.2  -22.33%
mc_8tap_regular_w32_hv_16bpc_c                  6448.2   5113.1  -20.71%
mc_8tap_regular_w32_v_16bpc_c                   5143.6   4046.7  -21.33%
mc_8tap_regular_w64_0_16bpc_c                    232.8    231.0   -0.77%
mc_8tap_regular_w64_h_16bpc_c                  17493.3  13606.5  -22.22%
mc_8tap_regular_w64_hv_16bpc_c                 20834.8  16578.6  -20.43%
mc_8tap_regular_w64_v_16bpc_c                  17452.5  13747.8  -21.23%
mc_8tap_regular_w128_0_16bpc_c                   826.0    824.5   -0.18%
mc_8tap_regular_w128_h_16bpc_c                 48273.4  37986.2  -21.31%
mc_8tap_regular_w128_hv_16bpc_c                58284.0  44935.2  -22.90%
mc_8tap_regular_w128_v_16bpc_c                 48847.3  38000.0  -22.21%

Ampere Altra (aarch64)                            Old      New    Delta

mc_8tap_regular_w2_0_8bpc_c                      193.3    205.2    6.16%
mc_8tap_regular_w2_h_8bpc_c                      338.0    303.2  -10.30%
mc_8tap_regular_w2_hv_8bpc_c                     781.8    636.3  -18.61%
mc_8tap_regular_w2_v_8bpc_c                      511.3    381.9  -25.31%
mc_8tap_regular_w4_0_8bpc_c                      178.9    191.1    6.82%
mc_8tap_regular_w4_h_8bpc_c                      592.7    504.9  -14.81%
mc_8tap_regular_w4_hv_8bpc_c                    1378.0   1088.7  -20.99%
mc_8tap_regular_w4_v_8bpc_c                      745.4    573.9  -23.01%
mc_8tap_regular_w8_0_8bpc_c                      166.5    178.6    7.27%
mc_8tap_regular_w8_h_8bpc_c                      487.0    414.1  -14.97%
mc_8tap_regular_w8_hv_8bpc_c                    1026.8    762.5  -25.74%
mc_8tap_regular_w8_v_8bpc_c                      608.8    487.7  -19.89%
mc_8tap_regular_w16_0_8bpc_c                     216.9    214.4   -1.15%
mc_8tap_regular_w16_h_8bpc_c                    1196.5    985.3  -17.65%
mc_8tap_regular_w16_hv_8bpc_c                   2332.3   1886.0  -19.14%
mc_8tap_regular_w16_v_8bpc_c                    1389.5   1103.5  -20.58%
mc_8tap_regular_w32_0_8bpc_c                     333.2    331.0   -0.66%
mc_8tap_regular_w32_h_8bpc_c                    3440.8   2818.4  -18.09%
mc_8tap_regular_w32_hv_8bpc_c                   6624.7   5315.8  -19.76%
mc_8tap_regular_w32_v_8bpc_c                    3657.9   2965.0  -18.94%
mc_8tap_regular_w64_0_8bpc_c                     559.5    608.2    8.70%
mc_8tap_regular_w64_h_8bpc_c                   11420.5   9437.5  -17.36%
mc_8tap_regular_w64_hv_8bpc_c                  21796.9  17450.6  -19.94%
mc_8tap_regular_w64_v_8bpc_c                   11721.0   9673.7  -17.47%
mc_8tap_regular_w128_0_8bpc_c                    891.6    927.0    3.97%
mc_8tap_regular_w128_h_8bpc_c                  31319.1  26020.0  -16.92%
mc_8tap_regular_w128_hv_8bpc_c                 59354.8  47634.9  -19.75%
mc_8tap_regular_w128_v_8bpc_c                  31375.4  26229.2  -16.40%

mc_8tap_regular_w2_0_16bpc_c                     178.3    181.3    1.68%
mc_8tap_regular_w2_h_16bpc_c                     338.2    297.5  -12.03%
mc_8tap_regular_w2_hv_16bpc_c                    762.5    647.7  -15.06%
mc_8tap_regular_w2_v_16bpc_c                     502.3    385.2  -23.31%
mc_8tap_regular_w4_0_16bpc_c                     165.9    169.2    1.99%
mc_8tap_regular_w4_h_16bpc_c                     583.8    483.6  -17.16%
mc_8tap_regular_w4_hv_16bpc_c                    991.5    796.2  -19.70%
mc_8tap_regular_w4_v_16bpc_c                     734.4    573.1  -21.96%
mc_8tap_regular_w8_0_16bpc_c                     157.3    158.8    0.95%
mc_8tap_regular_w8_h_16bpc_c                    1061.9    871.9  -17.89%
mc_8tap_regular_w8_hv_16bpc_c                   1137.0    876.9  -22.88%
mc_8tap_regular_w8_v_16bpc_c                    1207.7    934.1  -22.65%
mc_8tap_regular_w16_0_16bpc_c                    216.9    218.4    0.69%
mc_8tap_regular_w16_h_16bpc_c                   2097.6   1622.1  -22.67%
mc_8tap_regular_w16_hv_16bpc_c                  2824.9   2225.3  -21.23%
mc_8tap_regular_w16_v_16bpc_c                   2206.7   1747.2  -20.82%
mc_8tap_regular_w32_0_16bpc_c                    322.6    325.5    0.90%
mc_8tap_regular_w32_h_16bpc_c                   5713.5   4460.0  -21.94%
mc_8tap_regular_w32_hv_16bpc_c                  8022.0   6335.3  -21.03%
mc_8tap_regular_w32_v_16bpc_c                   5801.9   4671.3  -19.49%
mc_8tap_regular_w64_0_16bpc_c                    656.4    639.4   -2.59%
mc_8tap_regular_w64_h_16bpc_c                  18763.1  14743.3  -21.42%
mc_8tap_regular_w64_hv_16bpc_c                 26631.8  21037.7  -21.01%
mc_8tap_regular_w64_v_16bpc_c                  18720.0  15117.6  -19.24%
mc_8tap_regular_w128_0_16bpc_c                  2020.9   1773.6  -12.24%
mc_8tap_regular_w128_h_16bpc_c                 50882.4  40092.6  -21.21%
mc_8tap_regular_w128_hv_16bpc_c                72142.1  57118.5  -20.83%
mc_8tap_regular_w128_v_16bpc_c                 50191.8  40619.5  -19.07%

SpacemiT K1 (riscv64)                             Old      New    Delta

mc_8tap_regular_w2_0_8bpc_c                      339.0    327.1   -3.51%
mc_8tap_regular_w2_h_8bpc_c                      668.4    531.7  -20.45%
mc_8tap_regular_w2_hv_8bpc_c                    1397.3   1091.4  -21.89%
mc_8tap_regular_w2_v_8bpc_c                      720.2    565.5  -21.48%
mc_8tap_regular_w4_0_8bpc_c                      406.1    392.6   -3.32%
mc_8tap_regular_w4_h_8bpc_c                     1251.5    988.6  -21.01%
mc_8tap_regular_w4_hv_8bpc_c                    2562.9   2025.1  -20.98%
mc_8tap_regular_w4_v_8bpc_c                     1321.1   1038.7  -21.38%
mc_8tap_regular_w8_0_8bpc_c                      536.0    524.1   -2.22%
mc_8tap_regular_w8_h_8bpc_c                     2425.5   1901.5  -21.60%
mc_8tap_regular_w8_hv_8bpc_c                    4890.9   3824.4  -21.81%
mc_8tap_regular_w8_v_8bpc_c                     2525.3   1985.1  -21.39%
mc_8tap_regular_w16_0_8bpc_c                     805.1    786.4   -2.32%
mc_8tap_regular_w16_h_8bpc_c                    6838.5   5333.5  -22.01%
mc_8tap_regular_w16_hv_8bpc_c                  12967.8   9720.8  -25.04%
mc_8tap_regular_w16_v_8bpc_c                    7067.9   5544.0  -21.56%
mc_8tap_regular_w32_0_8bpc_c                    1430.7   1408.1   -1.58%
mc_8tap_regular_w32_h_8bpc_c                   21615.9  16844.3  -22.07%
mc_8tap_regular_w32_hv_8bpc_c                  39207.8  29300.1  -25.27%
mc_8tap_regular_w32_v_8bpc_c                   22253.5  17475.4  -21.47%
mc_8tap_regular_w64_0_8bpc_c                    3228.9   3158.8   -2.17%
mc_8tap_regular_w64_h_8bpc_c                   76824.3  59906.2  -22.02%
mc_8tap_regular_w64_hv_8bpc_c                 133618.6  99802.2  -25.31%
mc_8tap_regular_w64_v_8bpc_c                   79020.2  62041.2  -21.49%
mc_8tap_regular_w128_0_8bpc_c                   5759.5   5975.1    3.74%
mc_8tap_regular_w128_h_8bpc_c                 217395.3 169473.8  -22.04%
mc_8tap_regular_w128_hv_8bpc_c                371760.4 276004.4  -25.76%
mc_8tap_regular_w128_v_8bpc_c                 223748.4 175879.6  -21.39%

mc_8tap_regular_w2_0_16bpc_c                     421.7    395.4   -6.24%
mc_8tap_regular_w2_h_16bpc_c                     665.6    535.8  -19.50%
mc_8tap_regular_w2_hv_16bpc_c                   1418.2   1099.0  -22.51%
mc_8tap_regular_w2_v_16bpc_c                     732.8    546.5  -25.42%
mc_8tap_regular_w4_0_16bpc_c                     553.0    526.3   -4.83%
mc_8tap_regular_w4_h_16bpc_c                    1236.8    976.6  -21.04%
mc_8tap_regular_w4_hv_16bpc_c                   2566.5   2015.4  -21.47%
mc_8tap_regular_w4_v_16bpc_c                    1319.7   1003.6  -23.95%
mc_8tap_regular_w8_0_16bpc_c                     601.8    553.3   -8.06%
mc_8tap_regular_w8_h_16bpc_c                    2373.3   1852.4  -21.95%
mc_8tap_regular_w8_hv_16bpc_c                   4858.5   3895.7  -19.82%
mc_8tap_regular_w8_v_16bpc_c                    2493.8   1917.0  -23.13%
mc_8tap_regular_w16_0_16bpc_c                    931.4    873.1   -6.26%
mc_8tap_regular_w16_h_16bpc_c                   6688.5   5192.5  -22.37%
mc_8tap_regular_w16_hv_16bpc_c                 12856.3   9800.0  -23.77%
mc_8tap_regular_w16_v_16bpc_c                   6962.1   5403.7  -22.38%
mc_8tap_regular_w32_0_16bpc_c                   1857.1   1779.0   -4.21%
mc_8tap_regular_w32_h_16bpc_c                  21269.9  16506.1  -22.40%
mc_8tap_regular_w32_hv_16bpc_c                 38936.2  29558.7  -24.08%
mc_8tap_regular_w32_v_16bpc_c                  21925.7  17107.1  -21.98%
mc_8tap_regular_w64_0_16bpc_c                   4052.2   3932.4   -2.96%
mc_8tap_regular_w64_h_16bpc_c                  75947.2  59017.3  -22.29%
mc_8tap_regular_w64_hv_16bpc_c                132996.0 100723.7  -24.27%
mc_8tap_regular_w64_v_16bpc_c                  78595.3  61668.7  -21.54%
mc_8tap_regular_w128_0_16bpc_c                  9566.2   9025.9   -5.65%
mc_8tap_regular_w128_h_16bpc_c                213355.7 165274.8  -22.54%
mc_8tap_regular_w128_hv_16bpc_c               367353.0 276373.1  -24.77%
mc_8tap_regular_w128_v_16bpc_c                221746.3 174176.8  -21.45%

IBM Power9 (ppc64le)                              Old      New    Delta

mc_8tap_regular_w2_0_8bpc_c                      100.0     94.7   -5.30%
mc_8tap_regular_w2_h_8bpc_c                      112.2     88.1  -21.48%
mc_8tap_regular_w2_hv_8bpc_c                     192.7    148.9  -22.73%
mc_8tap_regular_w2_v_8bpc_c                      113.1     82.9  -26.70%
mc_8tap_regular_w4_0_8bpc_c                      102.2     94.3   -7.73%
mc_8tap_regular_w4_h_8bpc_c                      195.2    148.2  -24.08%
mc_8tap_regular_w4_hv_8bpc_c                     334.7    248.0  -25.90%
mc_8tap_regular_w4_v_8bpc_c                      193.2    140.9  -27.07%
mc_8tap_regular_w8_0_8bpc_c                       96.2     91.1   -5.30%
mc_8tap_regular_w8_h_8bpc_c                      365.5    265.4  -27.39%
mc_8tap_regular_w8_hv_8bpc_c                     603.3    450.7  -25.29%
mc_8tap_regular_w8_v_8bpc_c                      364.5    269.0  -26.20%
mc_8tap_regular_w16_0_8bpc_c                     147.9    147.2   -0.47%
mc_8tap_regular_w16_h_8bpc_c                     298.7    230.6  -22.80%
mc_8tap_regular_w16_hv_8bpc_c                    612.6    472.2  -22.92%
mc_8tap_regular_w16_v_8bpc_c                     351.3    285.2  -18.82%
mc_8tap_regular_w32_0_8bpc_c                     232.1    233.9    0.78%
mc_8tap_regular_w32_h_8bpc_c                     762.5    609.3  -20.09%
mc_8tap_regular_w32_hv_8bpc_c                   1558.5   1203.3  -22.79%
mc_8tap_regular_w32_v_8bpc_c                     836.6    698.0  -16.57%
mc_8tap_regular_w64_0_8bpc_c                     434.1    423.4   -2.46%
mc_8tap_regular_w64_h_8bpc_c                    2452.4   1928.8  -21.35%
mc_8tap_regular_w64_hv_8bpc_c                   4858.1   3832.0  -21.12%
mc_8tap_regular_w64_v_8bpc_c                    2613.8   2090.6  -20.02%
mc_8tap_regular_w128_0_8bpc_c                    713.7    725.8    1.70%
mc_8tap_regular_w128_h_8bpc_c                   6704.0   5234.3  -21.92%
mc_8tap_regular_w128_hv_8bpc_c                 13343.5   9980.1  -25.21%
mc_8tap_regular_w128_v_8bpc_c                   7125.3   5439.5  -23.66%

mc_8tap_regular_w2_0_16bpc_c                      97.1     94.8   -2.37%
mc_8tap_regular_w2_h_16bpc_c                     112.9     79.8  -29.32%
mc_8tap_regular_w2_hv_16bpc_c                    198.8    157.8  -20.62%
mc_8tap_regular_w2_v_16bpc_c                     114.6     78.3  -31.68%
mc_8tap_regular_w4_0_16bpc_c                      95.9     97.8    1.98%
mc_8tap_regular_w4_h_16bpc_c                     198.4    144.2  -27.32%
mc_8tap_regular_w4_hv_16bpc_c                    329.3    263.0  -20.13%
mc_8tap_regular_w4_v_16bpc_c                     201.4    142.6  -29.20%
mc_8tap_regular_w8_0_16bpc_c                      99.8    106.0    6.21%
mc_8tap_regular_w8_h_16bpc_c                     355.7    266.6  -25.05%
mc_8tap_regular_w8_hv_16bpc_c                    522.3    386.8  -25.94%
mc_8tap_regular_w8_v_16bpc_c                     364.1    250.6  -31.17%
mc_8tap_regular_w16_0_16bpc_c                    151.9    158.4    4.28%
mc_8tap_regular_w16_h_16bpc_c                    389.8    313.2  -19.65%
mc_8tap_regular_w16_hv_16bpc_c                   658.6    519.6  -21.11%
mc_8tap_regular_w16_v_16bpc_c                    446.5    339.7  -23.92%
mc_8tap_regular_w32_0_16bpc_c                    246.5    247.1    0.24%
mc_8tap_regular_w32_h_16bpc_c                   1087.1    838.0  -22.91%
mc_8tap_regular_w32_hv_16bpc_c                  1780.7   1401.7  -21.28%
mc_8tap_regular_w32_v_16bpc_c                   1150.7    924.8  -19.63%
mc_8tap_regular_w64_0_16bpc_c                    528.9    516.6   -2.33%
mc_8tap_regular_w64_h_16bpc_c                   3630.9   2816.2  -22.44%
mc_8tap_regular_w64_hv_16bpc_c                  5505.4   4482.3  -18.58%
mc_8tap_regular_w64_v_16bpc_c                   3741.7   2841.2  -24.07%
mc_8tap_regular_w128_0_16bpc_c                   896.5    926.4    3.34%
mc_8tap_regular_w128_h_16bpc_c                  9660.5   8018.5  -17.00%
mc_8tap_regular_w128_hv_16bpc_c                15482.1  12656.0  -18.25%
mc_8tap_regular_w128_v_16bpc_c                  9782.2   7923.0  -19.01%

Loongson 3C5000L (loong64)

mc_8tap_regular_w2_0_8bpc_c                       27.3     27.5    0.73%
mc_8tap_regular_w2_h_8bpc_c                       20.0     17.3  -13.50%
mc_8tap_regular_w2_hv_8bpc_c                      47.4     36.8  -22.36%
mc_8tap_regular_w2_v_8bpc_c                       22.9     19.7  -13.97%
mc_8tap_regular_w4_0_8bpc_c                       26.6     26.7    0.38%
mc_8tap_regular_w4_h_8bpc_c                       39.2     30.8  -21.43%
mc_8tap_regular_w4_hv_8bpc_c                      85.7     62.8  -26.72%
mc_8tap_regular_w4_v_8bpc_c                       41.1     35.6  -13.38%
mc_8tap_regular_w8_0_8bpc_c                       26.2     26.3    0.38%
mc_8tap_regular_w8_h_8bpc_c                       72.2     57.1  -20.91%
mc_8tap_regular_w8_hv_8bpc_c                     162.8    117.0  -28.13%
mc_8tap_regular_w8_v_8bpc_c                       76.8     66.8  -13.02%
mc_8tap_regular_w16_0_8bpc_c                      36.1     36.2    0.28%
mc_8tap_regular_w16_h_8bpc_c                      82.5     64.4  -21.94%
mc_8tap_regular_w16_hv_8bpc_c                    235.3    177.1  -24.73%
mc_8tap_regular_w16_v_8bpc_c                      96.3     76.2  -20.87%
mc_8tap_regular_w32_0_8bpc_c                      56.4     56.5    0.18%
mc_8tap_regular_w32_h_8bpc_c                     231.5    184.1  -20.48%
mc_8tap_regular_w32_hv_8bpc_c                    684.0    487.7  -28.70%
mc_8tap_regular_w32_v_8bpc_c                     253.4    195.9  -22.69%
mc_8tap_regular_w64_0_8bpc_c                      97.0     97.0    0.00%
mc_8tap_regular_w64_h_8bpc_c                     793.2    625.9  -21.09%
mc_8tap_regular_w64_hv_8bpc_c                   2260.2   1551.1  -31.37%
mc_8tap_regular_w64_v_8bpc_c                     815.7    622.5  -23.69%
mc_8tap_regular_w128_0_8bpc_c                    162.7    162.8    0.06%
mc_8tap_regular_w128_h_8bpc_c                   2167.6   1727.3  -20.31%
mc_8tap_regular_w128_hv_8bpc_c                  6143.1   4142.9  -32.56%
mc_8tap_regular_w128_v_8bpc_c                   2188.2   1656.0  -24.32%

mc_8tap_regular_w2_0_16bpc_c                      26.2     26.0   -0.76%
mc_8tap_regular_w2_h_16bpc_c                      19.6     21.4    9.18%
mc_8tap_regular_w2_hv_16bpc_c                     50.3     41.3  -17.89%
mc_8tap_regular_w2_v_16bpc_c                      27.0     21.7  -19.63%
mc_8tap_regular_w4_0_16bpc_c                      25.8     25.6   -0.78%
mc_8tap_regular_w4_h_16bpc_c                      35.3     34.1   -3.40%
mc_8tap_regular_w4_hv_16bpc_c                     82.9     67.6  -18.46%
mc_8tap_regular_w4_v_16bpc_c                      45.8     35.8  -21.83%
mc_8tap_regular_w8_0_16bpc_c                      25.1     25.0   -0.40%
mc_8tap_regular_w8_h_16bpc_c                      68.6     60.7  -11.52%
mc_8tap_regular_w8_hv_16bpc_c                    109.8     89.6  -18.40%
mc_8tap_regular_w8_v_16bpc_c                      80.9     64.3  -20.52%
mc_8tap_regular_w16_0_16bpc_c                     35.4     35.3   -0.28%
mc_8tap_regular_w16_h_16bpc_c                    135.5    101.4  -25.17%
mc_8tap_regular_w16_hv_16bpc_c                   223.6    170.2  -23.88%
mc_8tap_regular_w16_v_16bpc_c                    154.9    105.4  -31.96%
mc_8tap_regular_w32_0_16bpc_c                     53.6     53.5   -0.19%
mc_8tap_regular_w32_h_16bpc_c                    360.3    266.5  -26.03%
mc_8tap_regular_w32_hv_16bpc_c                   628.8    459.3  -26.96%
mc_8tap_regular_w32_v_16bpc_c                    394.5    252.4  -36.02%
mc_8tap_regular_w64_0_16bpc_c                    115.8    115.7   -0.09%
mc_8tap_regular_w64_h_16bpc_c                   1209.0    849.0  -29.78%
mc_8tap_regular_w64_hv_16bpc_c                  2085.2   1464.6  -29.76%
mc_8tap_regular_w64_v_16bpc_c                   1233.8    830.9  -32.66%
mc_8tap_regular_w128_0_16bpc_c                   171.8    171.9    0.06%
mc_8tap_regular_w128_h_16bpc_c                  3296.4   2248.5  -31.79%
mc_8tap_regular_w128_hv_16bpc_c                 5631.2   3912.0  -30.53%
mc_8tap_regular_w128_v_16bpc_c                  3248.2   2225.3  -31.49%
Edited by Nathan E. Egge

Merge request reports

Loading