[Ffmpeg-devel] [PATCH] Chinese AVS video decoder

Måns Rullgård mru
Thu Jun 29 21:35:56 CEST 2006


Rich Felker <dalias at aerifal.cx> writes:

> On Thu, Jun 29, 2006 at 07:30:46PM +0100, M?ns Rullg?rd wrote:
>> Rich Felker <dalias at aerifal.cx> writes:
>> 
>> > On Thu, Jun 29, 2006 at 02:56:22AM +0200, Michael Niedermayer wrote:
>> >> [...]
>> >> > +static const int cbp_tab[64][2] = {
>> >> > +  {63, 0},{15,15},{31,63},{47,31},{ 0,16},{14,32},{13,47},{11,13},
>> >> > +  { 7,14},{ 5,11},{10,12},{ 8, 5},{12,10},{61, 7},{ 4,48},{55, 3},
>> >> > +  { 1, 2},{ 2, 8},{59, 4},{ 3, 1},{62,61},{ 9,55},{ 6,59},{29,62},
>> >> > +  {45,29},{51,27},{23,23},{39,19},{27,30},{46,28},{53, 9},{30, 6},
>> >> > +  {43,60},{37,21},{60,44},{16,26},{21,51},{28,35},{19,18},{35,20},
>> >> > +  {42,24},{26,53},{44,17},{32,37},{58,39},{24,45},{20,58},{17,43},
>> >> > +  {18,42},{48,46},{22,36},{33,33},{25,34},{49,40},{40,52},{36,49},
>> >> > +  {34,50},{50,56},{52,25},{54,22},{41,54},{56,57},{38,41},{57,38}
>> >> > +};
>> >> 
>> >> this fits in an uint8_t which means we could save 75% memory, same issue
>> >> with many other tables
>> >
>> > and for those who don't understand already, memory == performance due
>> > to cache pollution.
>> 
>> Possible exception is machines with large caches and no byte access to
>> memory.  Such things exist.
>
> And such things will have hopelessly poor multimedia performance

Some DSPs fall into this category.  They are certainly not poor at
multimedia if programmed properly.

> already. As well as poor string performance, etc...

The first generation of Alpha CPUs had no byte-access to memory.  They
did however have powerful instructions for processing bytes within
64-bit registers.  On typical tasks (and especially floating point),
they vastly outperformed then-current (1992) x86 CPUs.

-- 
M?ns Rullg?rd
mru at inprovide.com




More information about the ffmpeg-devel mailing list