Skip to content

Fix windows - #280

Closed
stone-d-chen wants to merge 7 commits into
ffvvc:deblock_asmfrom
stone-d-chen:fix-windows
Closed

Fix windows#280
stone-d-chen wants to merge 7 commits into
ffvvc:deblock_asmfrom
stone-d-chen:fix-windows

Conversation

@stone-d-chen

Copy link
Copy Markdown
Collaborator

same as nuomi2021#3 to check if runs pass

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
Comment thread libavcodec/x86/vvc/vvc_deblock.asm Outdated
jne %%no_shift
%if %3
movdqa %1, [%2]
movu %1, [%2]

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe movdqu is better. the dqu will not over read.

Comment thread libavcodec/x86/vvc/vvc_deblock.asm Outdated
cextern pw_m1
cextern pd_1
cextern pd_3
pd_3 : times 4 dd 3

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Remove pd_3 declaration since it's no longer used.
@nuomi2021

Copy link
Copy Markdown
Member

replaced by #278
thank you for the pr

@nuomi2021 nuomi2021 closed this Feb 22, 2025
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