Warning: Undefined array key "useheading" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parser/xhtml.php on line 1099 Warning: Undefined array key "target" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parser/xhtml.php on line 557 Warning: Trying to access array offset on value of type null in /home/rockbox/flyspray/plugins/dokuwiki/inc/parser/xhtml.php on line 557 FS#12113 : Use more IRAM for asap/spc/nsf


  • Status Closed
  • Percent Complete
  • Task Type Patches
  • Category Codecs
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Release 3.8.1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by Buschel - 2011-05-13
Last edited by Buschel - 2011-05-15

FS#12113 - Use more IRAM for asap/spc/nsf

During measurements of the memory layout of the aac-decoder I recognized that several of our codecs do merely use IRAM (see http://www.rockbox.org/wiki/CodecMemoryUsage) – at least on iPod Video.

The attached patch moves several arrays to to IRAM. It would be great if somebody with some test file for those format could make a performance test. Maybe it is also possible to attach small samples to this flyspray entry.

Closed by  Buschel
2011-05-15 16:09
Reason for closing:  Accepted
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

Submitted with r29883, r29886 and r29887.

Some measures for patch v04 on an iPod Video:
nsf: nearly twice as fast now, nevertheless still faaar away from realtime (~11 times on the iPod Video)
sap: ~10% faster
spc: ~5% faster

On my e200v1 I get 44.45MHz (svn) and 42.51MHz (patch).

New version which does some CPU-specific configuration. This compiles for iPod 3G (PP5002), iPod Video (PP5022) and iPod nano 2G (S5L870x). The patch will need compilation and performance testing on other CPUs – especially Coldfire MCF5249 and MCF5250.

Performance on an iPod Video (svn / v07) with my samples
Tetris.nsf: 1713 MHz / 881 MHz ⇒ +94%
Ghostbusters.sap: 6.78 MHz / 5.91 MHz ⇒ +15%
Dragon1.spc: 48.16 MHz / 45.55 MHz ⇒ +6%

Performance gains on iPod nano 2G look similar:
Tetris.nsf: 1448 MHz / 829 MHz ⇒ +75%
Ghostbusters.sap: 8.86 MHz / 7.63 MHz ⇒ +16%
Dragon1.spc: 38.30 MHz / 36.61 MHz ⇒ +5%

Test files attached.

MikeS commented on 2011-05-14 20:52
Warning: Undefined array key "sepchar" in /home/rockbox/flyspray/plugins/dokuwiki/inc/pageutils.php on line 84 Warning: Undefined array key "useslash" in /home/rockbox/flyspray/plugins/dokuwiki/inc/pageutils.php on line 93 Unhandled exception: strtr(): Argument #2 ($from) must be of type array, string given
This should never happen, please inform Flyspray Developers.

If you are an Administrator of this Flyspray installation you might enable temporarly! DEBUG_EXCEPTION in constants.inc.php for more details.