[FFmpeg-devel] libavcodec/proresdec : add qmat dsp with SSE2, AVX2 simd
Martin Vignali
martin.vignali at gmail.com
Sat Oct 7 17:22:01 EEST 2017
Hello,
Patch in attach add a new dsp
for manipulation of qmat
for now, i move this code inside
for (i = 0; i < 64; i++) {
qmat_luma_scaled [i] = ctx->qmat_luma [i] * qscale;
qmat_chroma_scaled[i] = ctx->qmat_chroma[i] * qscale;
}
i add a special case for qscale == 1
and SSE2, AVX2 optimization
I use a new dsp for that, because we can probably use the same idea
for a similar use in proresenc_ks
and probably also for dnxhd (dec/enc), (need another func
because dnxhd, doesn't seems to use the same range for values)
I set two test in the checkasm, to test qscale == 1
and qscale != 1 (3 in my test)
this is my result (Kaby Lake, ox10.12)
qmatdsp.qmat2_scale_prores1_c: 20.3
qmatdsp.qmat2_scale_prores1_sse2: 15.5
qmatdsp.qmat2_scale_prores1_avx2: 10.3
qmatdsp.qmat2_scale_prores3_c: 24.3
qmatdsp.qmat2_scale_prores3_sse2: 20.3
qmatdsp.qmat2_scale_prores3_avx2: 14.8
Pass fate test for me (x86_64, osx)
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-libavcodec-proresdec2-add-qmat-dsp-with-SSE2-AVX2-si.patch
Type: application/octet-stream
Size: 19405 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20171007/bbf6beaf/attachment.obj>
More information about the ffmpeg-devel
mailing list