Skip to content

Add SVE2 BgrToYuv422pV2 optimization#424

Merged
ermig1979 merged 1 commit into
devfrom
cursor/sve2-bgr-to-yuv422p-v2-5651
Jun 13, 2026
Merged

Add SVE2 BgrToYuv422pV2 optimization#424
ermig1979 merged 1 commit into
devfrom
cursor/sve2-bgr-to-yuv422p-v2-5651

Conversation

@ermig1979

@ermig1979 ermig1979 commented Jun 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add SVE2 implementation and declaration for BgrToYuv422pV2.
  • Dispatch SimdBgrToYuv422pV2 to SVE2 before NEON when available.
  • Add SVE2 coverage to BgrToYuv422pV2AutoTest and update release notes.

Testing

  • cmake ./prj/cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DSIMD_TOOLCHAIN="g++" -DSIMD_TARGET="" -DSIMD_AVX512VNNI=ON -DSIMD_AMXBF16=ON -DSIMD_TEST_FLAGS="-march=native" -DSIMD_SHARED=ON
  • cmake --build build --parallel$(nproc)
  • export LD_LIBRARY_PATH="/workspace/build:$LD_LIBRARY_PATH" && ./Test "-r=.." -fi=BgrToYuv422pV2 -tt=1 -ts=1
  • aarch64-linux-gnu-g++ -std=c++17 -O2 -fPIC -I./src -march=armv8.6-a+sve2 -c src/Simd/SimdSve2BgrToYuvV2.cpp -o build/SimdSve2BgrToYuvV2.o
  • Emulated ARM64/SVE2 harness comparing Simd::Sve2::BgrToYuv422pV2 with Simd::Base::BgrToYuv422pV2 across multiple widths, heights, and YUV types.
Open in Web Open in Cursor 

Co-authored-by: Ihar Yermalayeu <ermig1979@gmail.com>
@ermig1979 ermig1979 marked this pull request as ready for review June 13, 2026 17:00
@ermig1979 ermig1979 merged commit a8cf4c3 into dev Jun 13, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants