Skip to content

deblock: use movu, not movdqa in CHROMA_LOAD_PARAM - #3

Open
stone-d-chen wants to merge 3 commits into
nuomi2021:deblock_chroma_remove_stackfrom
stone-d-chen:fix-windows
Open

deblock: use movu, not movdqa in CHROMA_LOAD_PARAM#3
stone-d-chen wants to merge 3 commits into
nuomi2021:deblock_chroma_remove_stackfrom
stone-d-chen:fix-windows

Conversation

@stone-d-chen

Copy link
Copy Markdown

It seems like Windows only has an alignment issue. Changed to an unaligned load seems to prevent the issue.

I'm unsure why there's a difference between windows and linux.

checkasm: using random seed 1749355096
checkasm: bench runs 1024 (1 << 10)
AVX:
 - vvc_deblock.luma   [OK]
 - vvc_deblock.chroma [OK]
checkasm: all 66 tests passed
benchmarking with native FFmpeg timers
nop: 28.3
vvc_h_loop_filter_chroma_8_mix_no-shift_c: 69.9
vvc_h_loop_filter_chroma_8_mix_no-shift_avx: 20.1
vvc_h_loop_filter_chroma_8_mix_shift_c: 85.4
vvc_h_loop_filter_chroma_8_mix_shift_avx: 44.9
vvc_h_loop_filter_chroma_8_one-side_no-shift_c: 92.1
vvc_h_loop_filter_chroma_8_one-side_no-shift_avx: 31.9
vvc_h_loop_filter_chroma_8_one-side_shift_c: 100.1
vvc_h_loop_filter_chroma_8_one-side_shift_avx: 27.9
vvc_h_loop_filter_chroma_8_strong_no-shift_c: 79.1
vvc_h_loop_filter_chroma_8_strong_no-shift_avx: 30.9
vvc_h_loop_filter_chroma_8_strong_shift_c: 108.1
vvc_h_loop_filter_chroma_8_strong_shift_avx: 29.4
vvc_h_loop_filter_chroma_8_weak_no-shift_c: 56.1
vvc_h_loop_filter_chroma_8_weak_no-shift_avx: 19.6
vvc_h_loop_filter_chroma_8_weak_shift_c: 68.1
vvc_h_loop_filter_chroma_8_weak_shift_avx: 19.1
vvc_h_loop_filter_chroma_10_mix_no-shift_c: 61.6
vvc_h_loop_filter_chroma_10_mix_no-shift_avx: 33.9
vvc_h_loop_filter_chroma_10_mix_shift_c: 108.1
vvc_h_loop_filter_chroma_10_mix_shift_avx: 26.4
vvc_h_loop_filter_chroma_10_one-side_no-shift_c: 70.6
vvc_h_loop_filter_chroma_10_one-side_no-shift_avx: 28.9
vvc_h_loop_filter_chroma_10_one-side_shift_c: 87.9
vvc_h_loop_filter_chroma_10_one-side_shift_avx: 27.4
vvc_h_loop_filter_chroma_10_strong_no-shift_c: 68.6
vvc_h_loop_filter_chroma_10_strong_no-shift_avx: 27.1
vvc_h_loop_filter_chroma_10_strong_shift_c: 97.6
vvc_h_loop_filter_chroma_10_strong_shift_avx: 27.1
vvc_h_loop_filter_chroma_10_weak_no-shift_c: 46.6
vvc_h_loop_filter_chroma_10_weak_no-shift_avx: 21.4
vvc_h_loop_filter_chroma_10_weak_shift_c: 54.1
vvc_h_loop_filter_chroma_10_weak_shift_avx: 20.9
vvc_h_loop_filter_chroma_12_mix_no-shift_c: 63.1
vvc_h_loop_filter_chroma_12_mix_no-shift_avx: 28.4
vvc_h_loop_filter_chroma_12_mix_shift_c: 61.6
vvc_h_loop_filter_chroma_12_mix_shift_avx: 27.4
vvc_h_loop_filter_chroma_12_one-side_no-shift_c: 64.9
vvc_h_loop_filter_chroma_12_one-side_no-shift_avx: 26.6
vvc_h_loop_filter_chroma_12_one-side_shift_c: 82.9
vvc_h_loop_filter_chroma_12_one-side_shift_avx: 40.9
vvc_h_loop_filter_chroma_12_strong_no-shift_c: 117.1
vvc_h_loop_filter_chroma_12_strong_no-shift_avx: 28.1
vvc_h_loop_filter_chroma_12_strong_shift_c: 125.4
vvc_h_loop_filter_chroma_12_strong_shift_avx: 46.6
vvc_h_loop_filter_chroma_12_weak_no-shift_c: 49.4
vvc_h_loop_filter_chroma_12_weak_no-shift_avx: 18.1
vvc_h_loop_filter_chroma_12_weak_shift_c: 53.6
vvc_h_loop_filter_chroma_12_weak_shift_avx: 17.1
vvc_h_loop_filter_luma_8_skip_c: 38.4
vvc_h_loop_filter_luma_8_skip_avx: 10.4
vvc_h_loop_filter_luma_8_strong_c: 142.6
vvc_h_loop_filter_luma_8_strong_avx: 41.4
vvc_h_loop_filter_luma_8_weak_c: 86.9
vvc_h_loop_filter_luma_8_weak_avx: 10.6
vvc_h_loop_filter_luma_10_skip_c: 46.4
vvc_h_loop_filter_luma_10_skip_avx: 9.1
vvc_h_loop_filter_luma_10_strong_c: 86.4
vvc_h_loop_filter_luma_10_strong_avx: 39.9
vvc_h_loop_filter_luma_10_weak_c: 65.1
vvc_h_loop_filter_luma_10_weak_avx: 9.6
vvc_h_loop_filter_luma_12_skip_c: 47.4
vvc_h_loop_filter_luma_12_skip_avx: 9.4
vvc_h_loop_filter_luma_12_strong_c: 126.9
vvc_h_loop_filter_luma_12_strong_avx: 39.4
vvc_h_loop_filter_luma_12_weak_c: 46.4
vvc_h_loop_filter_luma_12_weak_avx: 39.9
vvc_v_loop_filter_chroma_8_mix_no-shift_c: 64.6
vvc_v_loop_filter_chroma_8_mix_no-shift_avx: 41.9
vvc_v_loop_filter_chroma_8_mix_shift_c: 86.4
vvc_v_loop_filter_chroma_8_mix_shift_avx: 40.6
vvc_v_loop_filter_chroma_8_one-side_no-shift_c: 70.9
vvc_v_loop_filter_chroma_8_one-side_no-shift_avx: 40.9
vvc_v_loop_filter_chroma_8_one-side_shift_c: 93.6
vvc_v_loop_filter_chroma_8_one-side_shift_avx: 37.9
vvc_v_loop_filter_chroma_8_strong_no-shift_c: 78.9
vvc_v_loop_filter_chroma_8_strong_no-shift_avx: 42.1
vvc_v_loop_filter_chroma_8_strong_shift_c: 99.6
vvc_v_loop_filter_chroma_8_strong_shift_avx: 42.6
vvc_v_loop_filter_chroma_8_weak_no-shift_c: 54.6
vvc_v_loop_filter_chroma_8_weak_no-shift_avx: 27.6
vvc_v_loop_filter_chroma_8_weak_shift_c: 66.6
vvc_v_loop_filter_chroma_8_weak_shift_avx: 27.1
vvc_v_loop_filter_chroma_10_mix_no-shift_c: 60.6
vvc_v_loop_filter_chroma_10_mix_no-shift_avx: 49.4
vvc_v_loop_filter_chroma_10_mix_shift_c: 85.4
vvc_v_loop_filter_chroma_10_mix_shift_avx: 34.1
vvc_v_loop_filter_chroma_10_one-side_no-shift_c: 61.6
vvc_v_loop_filter_chroma_10_one-side_no-shift_avx: 45.4
vvc_v_loop_filter_chroma_10_one-side_shift_c: 106.6
vvc_v_loop_filter_chroma_10_one-side_shift_avx: 46.6
vvc_v_loop_filter_chroma_10_strong_no-shift_c: 45.1
vvc_v_loop_filter_chroma_10_strong_no-shift_avx: 50.6
vvc_v_loop_filter_chroma_10_strong_shift_c: 124.4
vvc_v_loop_filter_chroma_10_strong_shift_avx: 47.1
vvc_v_loop_filter_chroma_10_weak_no-shift_c: 47.1
vvc_v_loop_filter_chroma_10_weak_no-shift_avx: 37.4
vvc_v_loop_filter_chroma_10_weak_shift_c: 55.6
vvc_v_loop_filter_chroma_10_weak_shift_avx: 34.9
vvc_v_loop_filter_chroma_12_mix_no-shift_c: 66.9
vvc_v_loop_filter_chroma_12_mix_no-shift_avx: 48.1
vvc_v_loop_filter_chroma_12_mix_shift_c: 94.1
vvc_v_loop_filter_chroma_12_mix_shift_avx: 45.4
vvc_v_loop_filter_chroma_12_one-side_no-shift_c: 99.6
vvc_v_loop_filter_chroma_12_one-side_no-shift_avx: 47.6
vvc_v_loop_filter_chroma_12_one-side_shift_c: 104.1
vvc_v_loop_filter_chroma_12_one-side_shift_avx: 58.1
vvc_v_loop_filter_chroma_12_strong_no-shift_c: 65.9
vvc_v_loop_filter_chroma_12_strong_no-shift_avx: 49.1
vvc_v_loop_filter_chroma_12_strong_shift_c: 96.6
vvc_v_loop_filter_chroma_12_strong_shift_avx: 46.1
vvc_v_loop_filter_chroma_12_weak_no-shift_c: 48.1
vvc_v_loop_filter_chroma_12_weak_no-shift_avx: 34.9
vvc_v_loop_filter_chroma_12_weak_shift_c: 55.1
vvc_v_loop_filter_chroma_12_weak_shift_avx: 36.4
vvc_v_loop_filter_luma_8_skip_c: 51.6
vvc_v_loop_filter_luma_8_skip_avx: 13.6
vvc_v_loop_filter_luma_8_strong_c: 96.6
vvc_v_loop_filter_luma_8_strong_avx: 55.1
vvc_v_loop_filter_luma_8_weak_c: 51.6
vvc_v_loop_filter_luma_8_weak_avx: 14.6
vvc_v_loop_filter_luma_10_skip_c: 47.1
vvc_v_loop_filter_luma_10_skip_avx: 15.1
vvc_v_loop_filter_luma_10_strong_c: 89.6
vvc_v_loop_filter_luma_10_strong_avx: 57.6
vvc_v_loop_filter_luma_10_weak_c: 45.9
vvc_v_loop_filter_luma_10_weak_avx: 14.1
vvc_v_loop_filter_luma_12_skip_c: 47.4
vvc_v_loop_filter_luma_12_skip_avx: 15.1
vvc_v_loop_filter_luma_12_strong_c: 129.4
vvc_v_loop_filter_luma_12_strong_avx: 57.1
vvc_v_loop_filter_luma_12_weak_c: 79.9
vvc_v_loop_filter_luma_12_weak_avx: 15.6
@nuomi2021
nuomi2021 force-pushed the deblock_chroma_remove_stack branch 2 times, most recently from f84c2d3 to 744056c Compare February 16, 2025 13:27
It seems like Windows only has an alignment issue. Changed to an unaligned load.

Remove pd_3 declaration since it's no longer used.
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