libyuv/unit_test
Frank Barchard 88b050f337 MergeUV AVX512BW use assembly
- Convert MergeUVRow_AVX512BW to assembly
- Enable MergeUVRow_AVX512BW for Windows with clangcl
- MergeUVRow_AVX2 use vpmovzxbw and vpsllw
- MergeUVRow_16_AVX2 use vpmovzxbw and vpsllw with different shift for U and V

AMD Zen 4 640x360 100000 iterations
Was
AVX512 MergeUVPlane_Opt (884 ms)
AVX2   MergeUVPlane_Opt (945 ms)
AVX2   MergeUVPlane_16_Opt (2167 ms)

Now
AVX512 MergeUVPlane_Opt (865 ms)
AVX2   MergeUVPlane_Opt (943 ms)
SSE2   MergeUVPlane_Opt (973 ms)
AVX2   MergeUVPlane_16_Opt (2102 ms)

Bug: None
Change-Id: I658ada2a75d44c3f93be8bd3ed96f83d5fa2ab8d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4271230
Reviewed-by: Fritz Koenig <frkoenig@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
2023-02-22 21:19:08 +00:00
..
testdata Add unittest TestLinuxMipsMsaMmi. 2020-04-16 19:51:27 +00:00
basictypes_test.cc Switch to C99 types 2018-01-23 19:16:05 +00:00
color_test.cc YUY2ToNV12 using YUY2ToY and YUY2ToNVUV 2022-09-30 22:41:21 +00:00
compare_test.cc fix compare row test for avx2 which does 64 bytes per loop 2021-04-06 22:37:25 +00:00
convert_test.cc P010ToI010 and P012ToI012 conversion functions 2023-01-13 19:20:12 +00:00
cpu_test.cc DetilePlane and unittest for NEON 2022-01-31 20:05:55 +00:00
cpu_thread_test.cc clamp C functions use compare 2020-07-16 22:03:34 +00:00
math_test.cc Disable tests via macro that refer to row.h 2019-08-20 18:44:36 +00:00
planar_test.cc MergeUV AVX512BW use assembly 2023-02-22 21:19:08 +00:00
rotate_argb_test.cc Add 10 bit rotate methods. 2023-01-04 21:10:01 +00:00
rotate_test.cc MergeUV_AVX512BW for I420ToNV12 2023-02-13 20:14:57 +00:00
scale_argb_test.cc Enable 256x144 scale tests for libyuv 2022-07-13 11:08:29 +00:00
scale_rgb_test.cc Enable 256x144 scale tests for libyuv 2022-07-13 11:08:29 +00:00
scale_test.cc Enable 256x144 scale tests for libyuv 2022-07-13 11:08:29 +00:00
scale_uv_test.cc Enable 256x144 scale tests for libyuv 2022-07-13 11:08:29 +00:00
unit_test.cc Remove MMI support 2022-01-26 08:41:33 +00:00
unit_test.h I422Rotate take stride for temporary buffers 2023-01-04 23:11:52 +00:00
video_common_test.cc Add support for AR64 format 2021-03-13 20:55:21 +00:00