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 Release 3.8.1
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by Andree Buschmann - 2011-05-13
Last edited by Andree Buschmann - 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  Andree Buschmann
2011-05-15 16:09
Reason for closing:  Accepted
Additional comments about closing:  

Submitted with r29883, r29886 and r29887.

Andree Buschmann commented on 2011-05-14 10:32

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

MichaelGiacomelli commented on 2011-05-14 17:17

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

Andree Buschmann commented on 2011-05-14 18:24

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%

Andree Buschmann commented on 2011-05-14 19:01

Test files attached.

Michael Sevakis commented on 2011-05-14 20:52

My results

SVN r29864 / w/ FS#12113 

H100 (MCF5249):
Dragon01.spc: 77.06MHz / 77.09MHz (-0.04%)
Ghostbusters.sap: 19.28MHz / 8.94MHz (+115.65%)
Tetris-Tengen.nsf: 1536.95MHz:259.87s /1542.52MHz:261.25s (-0.53%)

X5 (MCF5250):
Dragon01.spc: 77.33MHz / 86.62MHz (-12.01%)
Ghostbusters.sap: 19.36MHz / 8.99MHz (+115.35%)
Tetris-Tengen.nsf: 1546.52MHz:261.25s / 2406.69MHz:406.82s (-55.72%)

Yes, it was boosted. I even ran the x5 ones twice and double-checked everything. :\

Michael Sevakis commented on 2011-05-14 21:28

New Results

SVN / Pastbin patch:
X5 (MCF5250):
Dragon01.spc: 77.33MHz / 77.35MHz (-0.03%)
Ghostbusters.sap: 19.36MHz / 9.00MHz (+115.11%)
Tetris-Tengen.nsf: 1546.52MHz:261.25s / 1498.01MHz:253.07s (+3.23%)
(the one in the previous post should have been -35.78%)

Andree Buschmann commented on 2011-05-14 21:44

The above test was based on this 7b-version.

Jens Arnold commented on 2011-05-15 08:37

Here are a few results from the PP front, SVN r29879/ Patch 7b

iPod 2nd Gen (PP5002):
Dragon 01.spc: 48.89 MHz, 113.07 s / 48.89 MHz, 113.08 s (± 0)
Ghostbusters.sap: 11.46 MHz, 30.07 s / 10.11 MHz, 26.52 s (+13.4 %)
Tetris-Tengen.nsf: 2749.14 MHz, 720.07 s / 1026.95 MHz, 269.37 s (+167.7 %)

iPod Color (PP5020):
Dragon 01.spc: 48.23 MHz, 111.55 s / 52.92 MHz, 122.38 s (-8.8 %) ⇐=
Ghostbusters.sap: 6.89 MHz, 18.09 s / 6.54 MHz, 17.16 s (+5.4 %)
Tetris-Tengen.nsf: 1731.60 MHz, 454.05 s / 1125.17 MHz, 295.01 s (+53.9 %)

Andree Buschmann commented on 2011-05-15 11:58

This version disables further IRAM usage in the spc codec for PP5020. This seems to be the fastest configuration for this CPU and is the same as svn.

Andree Buschmann commented on 2011-05-15 12:31

Another change was neccessary for spc to keep svn's IRAM configuration.

Andree Buschmann commented on 2011-05-15 15:14

ASAP and NSF have been submitted, resync patch.

Andree Buschmann commented on 2011-05-15 16:02

Test by amiconn: SPC: 47.97 MHz, 110,93 s on PP5020 with patch v10

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing