Rockbox

  • Status Closed
  • Percent Complete
    0%
  • Task Type Patches
  • Category
  • Assigned To No-one
  • Operating System
  • Severity Low
  • Priority Very Low
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by lostlogic - 2005-12-10
Last edited by lostlogic - 2005-12-21

FS#2817 - Tremor codec optimizations

This patch improves Tremor performance by a few percent
compared to what is in CVS currently.

I created this patch based on advice from devs, and
profiling results. The strategy I followed was to put
all data arrays into IRAM first, except those which
were identified as not being used in current encodings
by IRC:Lear. Then I used profiling results, and nm
-BnS output to determing which parts of code were
causing cache thrashing, and moved those parts to IRAM
where they could be called rapidly without trashing the
cache for other more often used or smaller functions.
Finally, I inlined two of the three remaining most
called functions by combining bitwise.c and codebook.c
into codebook.c. The remaining most called function
was not easily inlinable, it is vorbis_book_decodevv_add.

That function and oggpack_look and oggpack_adv would be
great candidates for further optimization, along with
the mdct that I believe someone is already working on.

Closed by  lostlogic
2005-12-21 22:57
Reason for closing:  Out of Date
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

Logged In: YES
user_id=838556

This is out of date. Making new patch.

Anonymous Submitter commented on 2005-12-18 13:47

I got approx 10% less boost with this patch on -q4 Vorbis
files :)

However when applying this patch i believe there is a
linking problem, i got a problem building and had to delete
libTremor.a and rebuild.

I got approx 10% less boost with this patch on -q4 Vorbis
files :)

However when applying this patch i believe there is a
linking problem, i got a problem building and had to delete
libTremor.a and rebuild.

Yes, a clean rebuild of libTremor.a will be required with
this patch, because it removes bitwise.c (merged with
codebook.c to vacilitate inlining).

I have some more optimizations that I’ll incorporate with
this pretty soon :)

Yes, a clean rebuild of libTremor.a will be required with
this patch, because it removes bitwise.c (merged with
codebook.c to vacilitate inlining).

I have some more optimizations that I’ll incorporate with
this pretty soon :)

This is out of date. Making new patch.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing