I spent a bit of time on optimising puppy to improve performance on the NSLU2. The main issue with the Topfield USB protocol is that it is very sensitive to latency.
I adopted an aggressive optimisation strategy for the main codepath used in the get operation. The resulting changes improve the peak performance from 9.54 Mbits/s to a reasonably good 16.39 Mbits/s. That's approximately a 170% speed improvement and brings the performance of puppy on NSLU2 within the ballpark of Altair on a PC.
I will need to do more testing before unleashing a new version on the public, but the initial results look promising.
1 comment:
Actually Pete, although it is approximately 170% of the original peak speed, that's only approximately a 70% speed "improvement"... (71.8% to be exact :)
Post a Comment