Recently ClassicHasClass of TenFourFox fame replied to my post The Mythical Road Apple. Apparently he found my post while trying to find out who had edited the Wikipedia page about the Performa 6200.
For the record, I was indeed the one who edited that page. After publishing The Mythical Road Apple I edited the x200 related pages on Wikipedia to remove inaccurate motherboard information; add accurate text about the same; and replace Low End Mac’s links with a link to Apple’s technical note at the original location where I found it.
With that out of the way I’ll take a moment to respond to the post by ClassicHasClass.
A Tale of Two Computers
One thing which may have gotten lost in all the technical detail of my article is that 603 based x200 Macs and 603e based x200 Macs behaved like completely different machines. Invariably when you read end user complaints about the x200 series the complaints are about a 603 based model.
The Low End Mac articles treat all of the models the same and attribute any issues to the motherboard. Discrepancies which were reported by readers back then, such as good performance with later models or higher than 9,600 baud serial port speeds, were hand waved as improvements to Mac OS.
Naturally ClassicHasClass does not make any of the technical errors that Low End Mac makes in their articles. The guy knows his stuff. And his technical critiques of the motherboard are valid. While the motherboard was nothing like the descriptions at Low End Mac, it was indeed ‘less than ideal.’ A board for a 68K processor evolved to host a PowerPC.
The problem is he places too much emphasis on the motherboard. At the end of the day it didn’t make much difference in the performance of the 603e based models versus contemporary Power Macs. And that forces us to the conclusion that it was not the motherboard which hampered 603 based models, but the 603 itself.
Among other old Macs I have both a fully restored 6300 and a fully restored 6100/66 DOS with the 256K L2 cache card. The Power Mac 6100 has a 64-bit path to main memory and extensive DMA support, yet it’s neither faster nor more responsive. The Performa 6300 achieves higher networking speeds even with System 7.5. The 6300 and 6100 are responsive under the same circumstances, sluggish under the same circumstances, and they freeze under the same circumstances. When sluggish or frozen the 6300 just finishes its tasks and becomes responsive again in less time.
The thing that ClassicHasClass spends a good deal of time discussing, controller DMA, was no panacea for Mac OS classic’s cooperative multitasking. Likewise, if a 6300 and 6100 have comparable responsiveness under load but a 6200 is worse, then the difference is not due to DMA.
The Long List of Faults
I was surprised to see ClassicHasClass link to Dan Knight’s Power Mac and Performa x200, Road Apples. Mr. Knight’s article was a rehash of Mr. Barber’s flawed piece. The Mythical Road Apple was intended to completely debunk both. There is not a single factual claim in Mr. Knight’s entire article, with the possible exception of certain comm and PDS cards disabling a corresponding serial port.
I realize that last paragraph might seem harsh. I want to be clear that I have the utmost respect for Mr. Knight, the web site he runs, and the many informative articles he has published. (Likewise for ClassicHasClass and the TenFourFox project.) Low End Mac has been an invaluable resource to the Apple community for years. But Mr. Barber got some bizarre misinformation about the x200 line back in the day, and that misinformation propagated throughout Low End Mac discussions about the machines.
The Speed Penalty
“A 20-25% speed penalty (his numbers), however, is not trivial and I think he underestimates how this would have made the machines feel comparatively in practice even on native code.”
The 6300 feels very much like an 8100/80 and is noticeably faster than a 6100/66. It’s fair to point out that the Performa 6300 has a 100 MHz processor yet feels like a Power Mac with an 80 MHz processor. Clearly the less than optimal motherboard design prevents the 603e from reaching its full potential. Never the less it does not feel slow for computers of that time period.
It was a consumer machine sold at a consumer price. For half the price of an 8100/80 the consumer got a machine with comparable performance along with monitor, keyboard, mouse, and software. If Apple had to recycle the 630 motherboard to make that price/performance point happen then it was worth it.
DMA Support
“His article claims that both the SCSI bus and the serial ports have DMA, but I don’t see this anywhere in the developer notes (and at least one source contradicts him).”
To the best of my knowledge the chips being used supported DMA. But Apple did not always make use of available hardware support for DMA. And it appears from ClassicHasClass’s source that they did not in this case.
“Although Daniel states that relaying traffic for an Ethernet card ‘would not have impacted Internet handling’ based on his estimates of actual bandwidth, the real rate limiting step here is how quickly the CPU, and by extension the OS, can service the controller.”
This is true. But given the clock speed and performance of the PowerPC 603/603e servicing the controller would only be an issue under an extreme processor load. Otherwise 10 Mbps would be child’s play for these processors. Even with DMA an extreme load would affect throughput given the cooperative multitasking of Mac OS. Whatever scenario you wish to set up the ultimate problem is software, and DMA only gives you a little bit more wiggle room before throughput falls due to irregular task switching and limited interrupt handling. This is one of those places where I agree with ClassicHasClass’s critique, but disagree in regard to how much it matters in the grand scheme of things.
Again I’ll point out that the 6300 is not slower than comparable Power Macs when it comes to networking or the Internet. Even when running System 7.5 with MacTCP my 6300 downloads data faster than my 6100. Therefore Mr. Barber’s assertion that the x200 line had terrible performance in these areas due to lack of DMA for Ethernet and serial port transfers cannot be true. If the 6200 was slow on the Internet…and I imagine it was…it was due to L1 cache thrashing by the 68K emulator while different parts of the OS, some PowerPC and some 68K, had to be executed over and over with each data transfer.
Fewer Problems?
“Compare this design with the 9500’s full PCI bus, 64-bit interface and hardware assist: even though the 9500 was positioned at a very different market segment, and the weak 603 implementation is no comparison to the 604, that doesn’t absolve the 6200 of its other deficiencies and the 9500 ran the same operating system with considerably fewer problems…”
The issue I have with this comparison is that Power Macs with processors comparable to 5300/6300 Performas did not run Mac OS classic with considerably fewer problems. They ran it about the same despite having 64-bit buses to main memory and full DMA support. This points to faster CPUs being the main reason why later models experienced smoother operation. It may also point to improvements made when Apple moved from NuBus to a PCI architecture.
Stand By Your Performa
While I agree with many of ClassicHasClass’s points, I stand by my original assessment that the 603e based Performas were good consumer machines for the time. He is absolutely correct in his assessment that the motherboard was not the best it could be. But the price was also not the worst it could be. And while this resulted in a slower machine than otherwise could of been, it did not result in a slow machine relative to the Mac lineup of the time.
Likewise, I still say the performance issues with the 603 based models would have been almost entirely due to the 16KB L1 cache. The 603e models ran fine and there’s no other relevant physical difference between the two.