mirror of https://git.ffmpeg.org/ffmpeg.git
846fbc395b
For 4K/8K video processing, it's possible to have over 1,000 tasks pending on the executor. In such cases, O(n) and O(log(n)) insertion times are too costly. Reducing this to O(1) will significantly decrease the time spent in critical sections clip | before | after | delta ------------------------------------------------------------|--------|--------|------- VVC_HDR_UHDTV2_OpenGOP_7680x4320_50fps_HLG10.bit | 24 | 27 | 12.5% VVC_HDR_UHDTV2_OpenGOP_7680x4320_50fps_HLG10_HighBitrate.bit| 12 | 17 | 41.7% tears_of_steel_4k_8M_8bit_2000.vvc | 34 | 102 | 200.0% VVC_UHDTV1_OpenGOP_3840x2160_60fps_HLG10.bit | 126 | 128 | 1.6% RitualDance_1920x1080_60_10_420_37_RA.266 | 350 | 378 | 8.0% NovosobornayaSquare_1920x1080.bin | 341 | 369 | 8.2% Tango2_3840x2160_60_10_420_27_LD.266 | 69 | 70 | 1.4% RitualDance_1920x1080_60_10_420_32_LD.266 | 243 | 259 | 6.6% Chimera_8bit_1080P_1000_frames.vvc | 420 | 392 | -6.7% BQTerrace_1920x1080_60_10_420_22_RA.vvc | 148 | 144 | -2.7% |
||
---|---|---|
.. | ||
Makefile | ||
cabac.c | ||
cabac.h | ||
ctu.c | ||
ctu.h | ||
data.c | ||
data.h | ||
dec.c | ||
dec.h | ||
dsp.c | ||
dsp.h | ||
dsp_template.c | ||
filter.c | ||
filter.h | ||
filter_template.c | ||
inter.c | ||
inter.h | ||
inter_template.c | ||
intra.c | ||
intra.h | ||
intra_template.c | ||
intra_utils.c | ||
itx_1d.c | ||
itx_1d.h | ||
mvs.c | ||
mvs.h | ||
ps.c | ||
ps.h | ||
refs.c | ||
refs.h | ||
thread.c | ||
thread.h |