OrenHg / libyuv

Automatically exported from code.google.com/p/libyuv
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

ARGBScale is slow on Neon #156

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
./runyuv10 ARGBScale*
ARGBScaleTo1366x768 (58866 ms)
ARGBScaleDownBy34 (33116 ms)
ARGBScaleTo853x480 (29901 ms)
ARGBScaleDownBy38 (12102 ms)
ARGBScaleDownBy2 (9115 ms)
ARGBScaleDownBy4 (4027 ms)
ARGBScaleDownBy8 (2466 ms)
ARGBScaleDownBy16 (1622 ms)
ARGBScaleDownBy5 (1521 ms)

Original issue reported on code.google.com by fbarch...@google.com on 15 Nov 2012 at 10:03

GoogleCodeExporter commented 9 years ago
chronos@localhost $ sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest 
--gtest_filter=*Scale*
Note: Google Test filter = *Scale*
[==========] Running 18 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 18 tests from libyuvTest
[ RUN      ] libyuvTest.ARGBScaleDownBy2
filter 0 -      883 us C -      880 us OPT
filter 1 -     3154 us C -     3142 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy2 (9145 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy4
filter 0 -      401 us C -      400 us OPT
filter 1 -     1061 us C -     1071 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy4 (4003 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy5
filter 0 -      154 us C -      156 us OPT
filter 1 -      176 us C -      175 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy5 (1742 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy8
filter 0 -       79 us C -       80 us OPT
filter 1 -      496 us C -      496 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy8 (2217 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy16
filter 0 -       18 us C -       17 us OPT
filter 1 -       81 us C -       79 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy16 (1262 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy34
filter 0 -     1471 us C -     1469 us OPT
filter 1 -    14547 us C -    14531 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy34 (33139 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy38
filter 0 -      735 us C -      737 us OPT
filter 1 -     5021 us C -     5023 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy38 (12599 ms)
[ RUN      ] libyuvTest.ARGBScaleTo1366x768
filter 0 -     2878 us C -     2882 us OPT
filter 1 -    26047 us C -    26049 us OPT
[       OK ] libyuvTest.ARGBScaleTo1366x768 (59030 ms)
[ RUN      ] libyuvTest.ARGBScaleTo853x480
filter 0 -     2404 us C -     2398 us OPT
filter 1 -    11991 us C -    12000 us OPT
[       OK ] libyuvTest.ARGBScaleTo853x480 (29913 ms)
[ RUN      ] libyuvTest.ScaleDownBy2
filter 0 -      779 us C -      338 us OPT
filter 1 -     1548 us C -      658 us OPT
filter 2 -     1547 us C -      659 us OPT
[       OK ] libyuvTest.ScaleDownBy2 (6097 ms)
[ RUN      ] libyuvTest.ScaleDownBy4
filter 0 -      167 us C -      113 us OPT
filter 1 -     1255 us C -      551 us OPT
filter 2 -     1356 us C -      560 us OPT
[       OK ] libyuvTest.ScaleDownBy4 (4564 ms)
[ RUN      ] libyuvTest.ScaleDownBy5
filter 0 -      144 us C -      143 us OPT
filter 1 -      895 us C -      260 us OPT
filter 2 -      890 us C -      261 us OPT
[       OK ] libyuvTest.ScaleDownBy5 (3158 ms)
[ RUN      ] libyuvTest.ScaleDownBy8
filter 0 -       43 us C -       43 us OPT
filter 1 -      482 us C -      145 us OPT
filter 2 -     1428 us C -     1423 us OPT
[       OK ] libyuvTest.ScaleDownBy8 (4124 ms)
[ RUN      ] libyuvTest.ScaleDownBy16
filter 0 -       17 us C -       17 us OPT
filter 1 -      219 us C -       58 us OPT
filter 2 -      219 us C -       58 us OPT
[       OK ] libyuvTest.ScaleDownBy16 (1143 ms)
[ RUN      ] libyuvTest.ScaleDownBy34
filter 0 -     1094 us C -      724 us OPT
filter 1 -     4025 us C -     1035 us OPT
filter 2 -     4030 us C -     1021 us OPT
[       OK ] libyuvTest.ScaleDownBy34 (12509 ms)
[ RUN      ] libyuvTest.ScaleDownBy38
filter 0 -      405 us C -      243 us OPT
filter 1 -     1319 us C -      751 us OPT
filter 2 -     1323 us C -      758 us OPT
[       OK ] libyuvTest.ScaleDownBy38 (5364 ms)
[ RUN      ] libyuvTest.ScaleTo1366x768
filter 0 -     3303 us C -     3306 us OPT
filter 1 -     9058 us C -     6272 us OPT
filter 2 -     9044 us C -     6269 us OPT
[       OK ] libyuvTest.ScaleTo1366x768 (37873 ms)
[ RUN      ] libyuvTest.ScaleTo853x480
filter 0 -     1430 us C -     1429 us OPT
filter 1 -     4457 us C -     2830 us OPT
filter 2 -     4461 us C -     2834 us OPT
[       OK ] libyuvTest.ScaleTo853x480 (18024 ms)
[----------] 18 tests from libyuvTest (245916 ms total)

[----------] Global test environment tear-down
[==========] 18 tests from 1 test case ran. (245917 ms total)
[  PASSED  ] 18 tests.

Original comment by fbarch...@google.com on 15 Nov 2012 at 10:13

GoogleCodeExporter commented 9 years ago
Neon ARGB scale functions for r497
chronos@localhost $ sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest 
--gtest_filter=*ARGBScale*
Note: Google Test filter = *ARGBScale*
[==========] Running 9 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 9 tests from libyuvTest
[ RUN      ] libyuvTest.ARGBScaleDownBy2
filter 0 -      935 us C -      782 us OPT
filter 1 -     3315 us C -     1408 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy2 (7678 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy4
filter 0 -      444 us C -      382 us OPT
filter 1 -     1104 us C -      639 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy4 (3744 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy5
filter 0 -      173 us C -      171 us OPT
filter 1 -      201 us C -      179 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy5 (1901 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy8
filter 0 -       89 us C -       83 us OPT
filter 1 -      522 us C -      250 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy8 (2114 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy16
filter 0 -       19 us C -       19 us OPT
filter 1 -       94 us C -       48 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy16 (1392 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy34
filter 0 -     1565 us C -     1569 us OPT
filter 1 -    15280 us C -    11418 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy34 (31059 ms)
[ RUN      ] libyuvTest.ARGBScaleDownBy38
filter 0 -      626 us C -      620 us OPT
filter 1 -     5290 us C -     3462 us OPT
[       OK ] libyuvTest.ARGBScaleDownBy38 (11188 ms)
[ RUN      ] libyuvTest.ARGBScaleTo1366x768
filter 0 -     3054 us C -     3032 us OPT
 filter 1 -    27563 us C -    21795 us OPT
[       OK ] libyuvTest.ARGBScaleTo1366x768 (56720 ms)
[ RUN      ] libyuvTest.ARGBScaleTo853x480
filter 0 -     2529 us C -     2535 us OPT
filter 1 -    12712 us C -     9207 us OPT
[       OK ] libyuvTest.ARGBScaleTo853x480 (28235 ms)
[----------] 9 tests from libyuvTest (144033 ms total)

Original comment by fbarch...@google.com on 17 Nov 2012 at 6:06

GoogleCodeExporter commented 9 years ago

Original comment by fbarch...@google.com on 20 Nov 2012 at 8:20