Read on for some brief benchmarks, and instructions on how to install the drivers on your Iyonix.
Benchmarks
This is probably the bit that will interest you most. Rather than bombard you with numbers I'll cut straight to the chase: The new drivers are much faster.
Performance - large transfers
Performance of large transfers has improved significantly. A design flaw in the old driver meant that performance was limited to a peak performance of around 3MB/s for large transfers (One 32KB buffer every centisecond). The new driver removes that limitation, so transfer speeds are much more dependent upon the speed of the USB device. Saving a 66MB sprite file to an SD card used to take 23 seconds (2.8MB/s) - it now takes 13 (5.07MB/s). Other people have reported speeds of up to 20MB/s for a USB hard drive.
Performance - small transfers
To measure the performance of small transfers I used a simple BASIC program to create 1000 files. With the old drivers it used to take 1151 seconds to complete. With the new driver it takes 93 seconds. This is again possible due to the removal of the "one transfer every centisecond" constraint from the driver. For comparison, when I ran the same test on my Iyonix's hard disc, it completed in 53 seconds.
Performance - interactive file copy
Interactive file copies benefit greatly from the increased performance of both large and small transfers. With a 4MB "Next" slot and "Faster" mode enabled, the time taken to copy a 128MB file to an SD card decreased from 3 minutes 7 seconds (0.7MB/s) to 30 seconds (4.2MB/s).
Conclusion
Like I said, it's faster.
All of the above tests were performed on a RISC OS 5.12 Iyonix, with the SD card formatted for RISC OS by !SCSIForm. USB performance on a BeagleBoard typically gives better performance, but that's probably something that deserves its own article!
Installation
Note that these steps only apply to Iyonix owners. BeagleBoard owners merely need to make sure they're running a recent ROM image (29/10/09 or newer), as all the required modules are contained in the ROM.
On Iyonix machines the USB mass storage drivers are soft-loaded by the !Boot sequence. At the moment the only way to obtain the full set of modules from the ROOL site is to download the full !Boot sequence/disc image - this is the "HardDisk4" download on this page.
If you don't have it already, you'll also need a copy of the !UnTarBZ2 application to allow you to extract the files (available from here).
If you're feeling brave you can replace your entire !Boot sequence with the new one - but be warned that there may still be a few kinks that need working out. In particular there's no USB2 softload, so you probably don't want to replace your !Boot sequence if you're running an old version of RISC OS 5 that doesn't have the USB2 drivers in ROM.
For the safer approach to using the modules, you need to copy the contents of !Boot.RO510Hook.Boot.PreDesk.SoftSCSI to !Boot.Choices.Boot.PreDesk.SoftSCSI in your own boot sequence. You'll also need to copy the RTSupport module from !Boot.Resources.!System.500.Modules to the identical place in your own boot sequence.
Any problems?
Feel free to mention them in the ROOL forums!
Links
- RISC OS Open website
- "Other zipfiles" download page (contains both the HardDisk4 disc image, important for Iyonix owners, and the latest Beagle ROM, for BeagleBoard owners)
- ROOL forum thread (containing a few more technical details)
- The Icon Bar's original USB2 review