[FFmpeg-devel] Fw: [foms] Paper submissions to LCA
Måns Rullgård
mans
Fri Jul 17 10:03:39 CEST 2009
Jason Garrett-Glaser <darkshikari at gmail.com> writes:
> 2009/7/17 M?ns Rullg?rd <mans at mansr.com>:
>> Jason Garrett-Glaser <darkshikari at gmail.com> writes:
>>
>>>>> Interleave entropy decoding and MC/idct. This means, for example,
>>>>> decoding an MV, and immediately performing motion compensation with
>>>>> that MV.
>>>>
>>>> This is unfortunately the opposite of what is needed to do part of the
>>>> decoding on a DSP or other coprocessor.
>>>
>>> We have CONFIG_SMALL for that. This isn't an issue.
>>
>> I wasn't talking about code size. To share work with a DSP, you have
>> to parse lots of syntax elements and hand them over to the DSP in
>> bulk. Passing messages to the DSP for every macroblock would totally
>> kill performance.
>
> That doesn't work in current ffmpeg either, as macroblocks are decoded
> in-sequence and the deblocking done immediately after decoding of each
> macroblock.
I know. I was just pointing out that optimising for single-cpu takes
the code in the opposite direction from optimising for asymmetric
multi-processors. Both are important though, so I'm not sure how to
solve this conflict.
> You could separate it out, or even keep two versions of the codebase
> for that reason. But in non-DSP situations, the interleaved method is
> better, especially on chips with small cache.
I don't doubt that at all.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list