Tuesday, November 7, 2017

And now for something completely different: is the 1GHz Sonnet G4 card worth it?

First of all, ObTenFourFox announcements: we are on track for TenFourFox Feature Parity Release 4 launching with Firefox 57/52.5 (but still supporting classic extensions, because we actually like our users) on November 14. All new features and updates have stuck, so the only new changes will be the remaining security patches and certificate/pin updates. In the meantime, I have finally started work on adding AltiVec-accelerated VP9 intra frame prediction to our in-tree fork of libvpx, the WebM decoder library. This is the last major portion of the VP9 codec that was lacking AltiVec SIMD acceleration, which I'm doing as a more or less direct port of the Intel SSE2 version with some converted MMX and SSE routines; we don't use the loop filter and have not since VP9 was first officially supported in TenFourFox. Already there are some obvious performance improvements but the partial implementation that I've checked in so far won't be enabled in FPR4 since I haven't tested it thoroughly on G4 systems yet. The last little bit will be rewriting the convolution and averaging code sections that are still in unaccelerated generic C and a couple little odds and ends. Watch for the first draft to appear in FPR5.

Also, in the plain-layouts-are-beautiful dept., I encountered a fun search engine for the way the Web used to be. Floodgap is listed, of course. More about that philosophy at a later date.

On to the main event. One of the computers in my stable of systems is my beloved Power Macintosh 7300, a classic Old World beige PCI Power Mac. This 7300 served as my primary personal computer -- at that time with a 500MHz Sonnet G3, 192MB of RAM and a Rage Orion 3D card -- for about three and a half years and later became the first gopher.floodgap.com before I resurrected it as a gaming system. Currently it has 1GB of RAM, the max for this unit; the same Rage Orion (RAGE 128 GL) 3-D accelerator, which I prefer to PCI Radeons for those games that have 3-D support but weren't patched for various changes in the early Radeon cards; two 7200rpm SCSI drives; a 24x CDROM; a (rather finicky) Orange Micro OrangePC 620 "PC on a card" with 128MB of RAM and a 400MHz AMD K6-II CPU; and, most relevantly to this article, a Sonnet Crescendo/PCI 800MHz G4 CPU upgrade card, running a PowerPC G4 7455 CPU with 256K L2 cache at CPU speed and 1MB of L3 at 200MHz. The system boots Mac OS 9.1 and uses CPU Director to disable speculative access and, for those hardware situations that require it, L2 and L3 caches.

Overall, this system runs pretty well. It naturally can chug through Classilla pretty well, but it also has the Mac ports of a large number of games from a smattering of 68K titles to software-rendered titles like Doom, System Shock, Full Throttle, Wing Commander III and up through 3-D titles near the end of OS 9's life such as Shogo MAD and Quake III and its derivatives like Star Trek Voyager: Elite Force. The PC card boots both Windows 95 OSR2 and Windows 98 to run games like Outlaws and Dark Forces II: Jedi Knight that were never ported to PowerPC Mac OS or OS X.

It's a project of mine to trick this sucker out, which is why I jumped at the chance to buy one when three of the nearly unobtainium 1.0 GHz G4 Sonnet Crescendo/PCI cards turned up on eBay unused in original boxes and factory livery. Although Sonnet obviously makes faster processor upgrades for later Power Macs, and in fact I have one of their dual 1.8GHz upgrades in my FW400 MDD (the Mac that replaced the 7300 as my daily driver), this was the fastest you could cram in a pre-G3 beige PCI Power Mac, i.e., pretty much anything with PCI slots from the 7300 to the 9600. Only the sticker on the box would have told you this was more than the prior top-of-the-line 800MHz card; nothing else mentioned anything of it, not even the manual (an info sheet was tucked inside to reassure you). The urban legend goes that Sonnet's board manufacturer under contract was out of business and Freescale-Motorola was no longer producing the 800MHz 7455. This was clearly the end of the Crescendo/PCI product since it didn't make enough money to be redesigned for a new manufacturer, but left Sonnet with about 140 otherwise useless daughtercards for which no CPU was available either. Possibly as an enticement, Freescale offered to complete Sonnet's order with 1GHz parts instead, which would have been a more-or-less drop-in replacement, and Sonnet quietly sold out their remaining stock with the faster chip installed. Other than a couple blowout NOS deals, all of which would sell out nearly instantly, this was the first time in years that I ever saw one of these cards offered. (I won't comment on the price offered by this gentleman, but clearly I was willing to pay it.)

The Crescendo/PCI cards struggle against the relatively weak system bus speed of these Macs which tops out at 50MHz. I've heard apocryphally of hacks to exceed this, but the details are unknown to me and all of them also allegedly have compatibility problems ranging from moderate to serious, so I won't discuss them here. To counter that, the 1GHz card not only increases its L3 cache speed from 200MHz to 250MHz (using the same 4:1 multiplier as the 800MHz card it's based on), but doubles its size to a beefy 2MB (the L2 cache remains 256K, at full CPU speed). The system must slow to the bus speed for video and other peripherals, but CPU-bound tasks will hit the slower RAM much less. None of this is unusual for this type of upgrade, and anyone in the market for a card like this is already well aware it won't be as fast as a dedicated system. The real question for someone like me who has an investment in such a system is, is it worth finding such a beast to know you've pushed your beloved classic beige Mac to its absolute limit, or is the 800MHz card the extent of practicality?

First, let's look at the card itself. I've photographed it front and back compared with the 800MHz card.

With the exception of some minor board revisions, the two cards are nearly identical except for the stickers and the larger heat sink. More about that in a moment.

If your system already had the 800MHz card in it, the 1GHz card can simply be swapped in; the Mac OS extension and OpenFirmware patches are the same. (If not, the available Sonnet Crescendo installers will work.) Using my lovely wife as a convenient monitor stand while swapping the CPUs, for which I still haven't been forgiven, I swapped cards and immediately fired up MacBench 5 to see what difference it made. And boy howdy, does it:

The card doesn't bench 3.33x the speed of the baseline G3/300 used by MacBench, but it does get almost 2.5x the speed. It runs about 25% faster than the G4/800, which makes sense given the clock speed differential and the fact that the MacBench code probably entirely fits within the caches of both upgrade cards.

Besides the louder fan, the other thing I noticed right away was that CPU-bound tasks like Virtual PC definitely improve. It is noticeably, if not dramatically, smoother than the 800MHz card, and the responsiveness is obviously better.

With this promising start, I fired up Quake III. It didn't feel a great deal faster but I didn't find this surprising, since beyond a certain threshold games of this level are generally limited by the 3D card rather than the CPU. I was about to start checking framerates when, about a minute into the game, the 7300 abruptly froze. I rebooted and tried again. This time it got around 45 seconds in before locking up. I tried Elite Force. Same thing. RAVE Quake and GLQuake could run for awhile, but in general the higher-end 3-D accelerated games just ground the system to a halt. Perhaps I had a defective card? Speculative I/O accesses were already disabled, so I turned off the L2 and the L3 just to see if there was some bad SRAM in there, though I would have thought the stress test with MacBench and Virtual PC would have found any glitches. Indeed, other than making OS 9 treacle in January, it failed to make any difference, implying the card itself was probably not defective. My wife was put back into monitor stand service and the 800MHz card was replaced. Everything functioned as it did before. So what happened?

In this system there are two major limitations, both of which probably contributed: heat, and power draw. Notice that larger heat sink, which would definitely imply the 1GHz card draws more watts and therefore generates more heat within a small, largely passively cooled case in which there are also two 7200rpm hard disks, a passively cooled 3D accelerator and an actively cooled PC card. Yes, all those little fans inside the unit certainly do get a bit loud when the system is cranked up.

The other problem is making all those things work within a 150W power envelope, the maximum the stock Power Mac 7300 power supply can put out. Let's add this all up. For the two 7200rpm SCSI drives we have somewhere between 20 and 25W draw each, so say 50W for the two of them if they're chugging away. Each PCI card can pull up to a maximum of 25W per spec; while the PC card was not running during these tests, it was probably not drawing nothing, and the Rage Orion was probably pulling close to its limits, so say 30-35W. The CD-ROM probably pulls around 5W when idle. If we assume a generous, low-power draw of about 2W per RAM stick, that's eight 128MB sticks to equal our gigabyte and 15-20W total. Finally, the CPU card is harder to compute, but Freescale's specs on the 1GHz 7455 estimate around 15 to 22W for the CPU alone, not including the very busy 2MB SRAM in the L3; add another 5 or so for that. That's up to 137W of power draw plus any other motherboard resources in play, and we're charitably assuming the PSU can continuously put out at max to maintain that. If there's any power sag, that could be enough to glitch the CPU. Running this close to the edge, the 3-6W power differential between the 800MHz and 1GHz cards is no longer a rounding error.

Now, if heat and/or power were the rate limiting characteristics, I could certainly yank the PC card or get rid of one of the hard drives, but that's really the trick, isn't it? The entire market for these kinds of processor upgrades consists of people like me who have a substantial investment in their old hardware, and that investment often consists of other kinds of power hungry upgrades. Compared to the 800MHz G4, the 1GHz card clearly pushes the envelope just enough extra to kick a system probably already at its limits over the edge. It's possible Sonnet had some inkling of this, and if so, that could be one reason why they never had a 1GHz G4 card in regular production for the beige Power Macs.

The 1GHz card is still a noticeable improvement particularly in CPU-bound tasks; the 2MB of L3 cache in particular helps to reduce the need to hit slower RAM on the system bus. For gaming, however, these cards have never been the optimal choice even though they can get many titles within reach of previously unsupported configurations; on PCI Power Macs, the 3D accelerator has to be accessed over the bus as well, and it's usually the 3D accelerator that limits overall framerate in higher-end titles. In addition, none of these CPU cards are particularly power-thrifty and it's pretty clear this uses more juice than any other such card. Overall, if you can get your hands on one and you have a beefier PSU like an 8500 (225W) or a 9600 (390W), this would be a great upgrade if you can find one at a nice price and certainly the biggest grunt you can get out of that class of system. If you have a smaller 150W system like my 7300 or the other Outrigger Power Macs, however, I'd look at your power budget first and see if this is just going to be a doorstop. Right now, unfortunately, mine is now just a spare in a box because of all the other upgrades. And that's a damn shame.


  1. Power consumption might be one limiting factor, another one seems to be clock skew or delay of the Crescendo cards. I have one running (slightly overclocked) in my Umax S900 and only got it stable after some modifications in the clock line. Anyone interested might visit my page http://baumstark.titaniummatrix.com/BEWARE./S900_Sonnet.html
    for more info. It's written in German, but either can be grasped by looking at the photos or google translate (whole webpage) does help.

  2. While perhaps neither here nor there, I encountered similar behavior from a Sonnet 1.8 GHz G4 upgrade installed in a Quicksilver 2002 Power Macintosh: stress the system for any reason and it'd lock up solid.

    It didn't seem to be related to thermal or power limitations in that system. Ultimately, I went through three or four of them before I finally got one that mostly worked. (It would only flake out under things that really ground the system hard, like distributed computing projects. So I just stopped doing that kind of thing.)

    Sonnet Technologies' technical support and willingness to swap products until I got one that worked were both absolutely outstanding.

    On that note about Power Macintosh G4 systems: does anyone have the specs for the screws used to hold the processor heat sink in place on an MDD G4 (DP/1GHz)? The previous owner lost most of them, my clothes dryer claimed one more and I'd really like to run TFF on this system (amongst other things)!

    1. This is what I encountered, although mostly with a GigaDesigns 1.8Ghz dual. I sold that off to a friend and went with a dual Sonnet. Quicksilver 2001.

      The biggest issues I ran into were the power consumption and the heat. When fully working my QS had the dual 1.8 G4, 1.5GB ram, a USB 2.0/FW 800 card, three video cards (for six displays) and a SATA card supporting two 1TB hard drives and 1 640GB laptop drive as well as a SATA optical Dual Layer burner.

      Every fan in the box had been replaced with fans for higher CFN, I knocked a hole in the bottom for a 120mm fan and the speaker came out for a 800mm intake fan in the front.

      It was an awesome system but it only ran for brief periods of time. It keep eating SATA PCI cards and USB 2.0 cards due to the power draw.

      Apple, never intended for every slot to be loaded with high power, high heat cards and a whiz bang CPU. The Quicksilver case is just a very poor thermo design internally.

      Finally, after sinking so much money into it and getting less and less return each time I went and upgraded to a G5 Quad and maxxed the ram. It's carrying everything I did with my QS but it's built for this.

      Had a lot of fun with it when it was working though.

  3. I found one of the Unbotanium Dual 1.8 7448 cpu's a while back for a really good deal but on reading up on it, there seems to be a really annoying issue regarding firmware.

    Newertech says whenever a PRAM-zap is required, that the original CPU has to be reinstalled, and the new CPU's firmware reinstalled after the zap - that this, to me was an unacceptable concession for a 20-30% speed bump. These are rumored to be amazing CPUs but I've had more than enough improvement upgrading to an SSD and PCI-SATA card.

  4. I know very little about the old beige Power Macs, even less about their power systems; but I've had great fortune in the past with upgrading the PSU's on Power Mac G4's to ATX. I simply followed the instructions here: http://www.jcsenterprises.com/Japamacs_Page/Blog/EA215F16-F592-4CF7-AA8A-496D5323F6BC.html (for Sawtooth G4's)
    and here: http://atxg4.com/
    (for B&W Power Mac G3's and all Power Mac G4's)
    At the latter site, he also sells the adapters needed to accomplish this. I've used his instructions to wire up my own adapters to alter two Sawtooths and one MDD/FW800. All have worked beautifully with quality ATX PSU's, using several different varieties of CPU upgrades (Sonnet, GigaDesign, PowerLogix) and all kinds of PCI peripherals including SATA cards. I couldn't be happier with my systems on ATX power, sometimes it's a challenge to get an ATX PSU to fit inside a Power Mac (particularly the MDD) but it's been worth it.

  5. Crazy how much those old cpu upgrade cards go for on the used market these days. I have a G4 XLR8 zif clocked at 550mhz in a G3/300 B&W tower allowing me to run 10.4 Tiger on it.

    1. Yeah, I found one of the 1 GHz cards for my 7600 last year and it was "only" around $200. That's a fair chunk of change for a "hobby" Old School mac machine, but part of the project for maxing this one out and unless the nostalgic Mac market really tanks it was a pretty good deal compared to what I've usually seen for the G4s running at 700 MHz or better.

      I've not had any power issues with it.

  6. I'm interested in hearing more about the OrangePC card, setup, usage, etc.


Due to an increased frequency of spam, comments are now subject to moderation.