Rockbox

  • Status Closed
  • Percent Complete
    100%
  • Task Type Patches
  • Category Codecs
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Version 3.2
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by stripwax - 2009-04-18
Last edited by pondlife - 2009-04-25

FS#10140 - Simple tremor optimisations

Two simple optimisation patches, both applicable independently or together: one that fixes alignment checks on Coldfire, one that removes unnecessary memset on all targets.

Effect of alignment fix on coldfire (tested on h120): about 1Mhz improvement according to test_codec on 96, 350, and 500 bitrate samples; roughly unchanged at 128, 192 and 256 bitrate samples. Will have no effect on non-coldfire targets

Effect of removing redundant memsets (tested on h120): incrementally additional ~1.5Mhz improvement at 192 bitrates and above. Patch will definitely benefit other targets too (although I’ve not measured other targets here)

Closed by  pondlife
2009-04-25 11:43
Reason for closing:  Accepted
Additional comments about closing:  

Closed upon request of OP.

On a rerun of the timings for the memset removal patch, I get much smaller improvement (which seems more realistic) - more like 0.1Mhz rather than 1.5Mhz. Rerunning a few times seems to consistently give the attached rather than the previous VORBIS_h120_r20728_alignment_redundantmemset
Benefit of the memset removal patch on its own is therefore very small on coldfire h120 - but still it really is a redundant memset, and other targets might see greater improvements in any case

nls commented on 2009-04-18 12:38

just a small nitpick, please use /* comments */ intead of // as per docs/CONTRIBUTING
otherwise, great to see someone improving the tremor codec! :)

nls - sure. memset patch updated.

This can be closed now, as it has been incorporated into  FS#9882  and committed

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing