Severe FireWire performance bug on Mac Pro
As I explained in my Feb 28 blog entry, I reserve internal drives for a striped RAID array containing data only (no system software or applications). I boot the Mac Pro from a FireWire 800 drive on which I’ve installed Mac OS X, plugged into the FireWire 800 port on the rear of the machine.
To my puzzlement, I had observed poor performance on the boot drive while copying files, and now I’ve determined the cause. Below are the performance numbers from DiskTester on a partly-full boot drive ('disktester run-sequential -c 128M Boot', speed would be a bit faster on an empty drive):
Write rate: 63.0MB/sec
Read rate: 69.4MB/sec
Plug in any of the following peripherals (it doesn’t matter whether the peripheral is FireWire 400 or FireWire 800):
- Epson R2400 printer using a FireWire 400 cable to the front of the Mac Pro (turn printer on after plugging in);
- Lexar FireWire 400 card reader to the Cinema Display port;
- SanDisk FireWire 800 card reader to the front of the Mac Pro. (Yes, FireWire 800).
- A 2nd FireWire 800 hard drive, connected to the first one, or directly to the Mac Pro.
Testing again with DiskTester yields the following greatly-impaired performance figures:
Write rate: 23.4MB/sec
Read rate: 51.2MB/sec
I verified this multiple times, plugging and unplugging with the same results every time—write speed is cut to nearly 1/3 of the speed without the peripheral! Read speed drops by 26%. While disappointing, one might expect that plugging in a FireWire 400 peripheral would cut performance to FireWire 400 speeds, but plugging in a FireWire 800 peripheral ought to have no effect!
The PowerMac G5 line suffered from a broken implementation of FireWire with impaired write performance (see various benchmarks at barefeats.com). These results show that the fancy new Mac Pro suffers similar problem—FireWire is worthless as a means of extending storage capacity when performance is a goal, should you want to connect even a single other peripheral.
What good are additional FireWire ports if connecting more than one device of any kind kills hard disk performance?
Note that connecting a 2nd FireWire 800 hard drive produces the same impaired performance. Don’t be suckered into using FireWire 800 for RAID, or any other multi-drive setup unless these low levels of performance are acceptable.