- 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
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.
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.
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.