watery01 / libyuv

Automatically exported from code.google.com/p/libyuv
0 stars 0 forks source link

I411 and I444 To ARGB are slow on Neon #142

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
sudo LIBYUV_REPEAT=1000 nice --5 ./libyuv_unittest --gtest_filter=*I*ToARGB_Opt 
| sed 's/\(.*(\)\([0-9]*\)\( ms)\)/\2 - \1\2\3/g' | sort -rn | grep ms
I444ToARGB_Opt (38711 ms)
I411ToARGB_Opt (28646 ms)
I422ToARGB_Opt (3582 ms)
I420ToARGB_Opt (3424 ms)
I400ToARGB_Opt (1202 ms)

On x86 they're all fast:
I444ToARGB_Opt (919 ms)
I420ToARGB_Opt (895 ms)
I411ToARGB_Opt (892 ms)
I422ToARGB_Opt (885 ms)
I400ToARGB_Opt (343 ms)

Original issue reported on code.google.com by fbarch...@chromium.org on 2 Nov 2012 at 6:59

GoogleCodeExporter commented 9 years ago
Neon optimized.
I420ToARGB1555_Any (4312 ms)
I420ToARGB1555_Unaligned (4302 ms)
I420ToARGB1555_Invert (4209 ms)
I420ToARGB1555_Opt (4206 ms)
I444ToARGB_Any (4139 ms)
I444ToARGB_Unaligned (4101 ms)
I444ToARGB_Invert (4064 ms)
I444ToARGB_Opt (4038 ms)
I411ToARGB_Any (3958 ms)
I411ToARGB_Unaligned (3919 ms)
I411ToARGB_Invert (3884 ms)
I411ToARGB_Opt (3860 ms)
I422ToARGB_Any (3764 ms)
I422ToARGB_Unaligned (3647 ms)
I422ToARGB_Invert (3599 ms)
I422ToARGB_Opt (3574 ms)
I420ToARGB4444_Any (3563 ms)
I420ToARGB4444_Unaligned (3532 ms)
I420ToARGB_Any (3530 ms)
I420ToARGB4444_Invert (3520 ms)
I420ToARGB4444_Opt (3508 ms)
I420ToARGB_Unaligned (3446 ms)
I420ToARGB_Invert (3423 ms)
I420ToARGB_Opt (3400 ms)
I400ToARGB_Invert (1237 ms)
I400ToARGB_Unaligned (1150 ms)
I400ToARGB_Opt (1142 ms)
I400ToARGB_Any (1140 ms)

Original comment by fbarch...@chromium.org on 2 Nov 2012 at 11:42