There are a few things we Mac users take for granted. As sure as two plus two equals four, new Power Macs from Apple will come with faster processors and (if we're really lucky) entirely new processor designs.
But with the release of Apple's new round of Power Mac G4s, our world has gone askew. These new Macs boast the same speeds as their predecessors . . . but they now house two G4 chips instead of one. Apple's upgrade formula has changed, and even simple math problems have taken on new meaning. Sure, two plus two still equals four. But what happens when you multiply a 500MHz G4 processor by two?
|G4 Sharing: How Multiprocessing Works In Mac OS 9 (left), most applications run on the primary processor, which bears the bulk of the processing load (signified by the red indicator bar). Applications that are multiprocessor-savvy can spin off additional tasks to the second G4 chip, providing a bit of a speed increase. In Mac OS X (right), non-multiprocessor applications can run on either processor--evening out the work the two processors must do. Multiprocessor-savvy software runs its various tasks on either processor--the operating system's scheduling software will give the job to the processor doing less work at any given time.|
The answer is more complicated than you might think. It depends on whether you plan to upgrade to Mac OS X, which will use that second processor far better than Mac OS 9 ever will. And it depends on the programs you use regularly--because if your bread-and-butter applications aren't written specifically to take advantage of a multiprocessor Mac, you'll find that these new Power Macs are no faster than their single-chip predecessors.
Is the new Power Mac G4 less than the sum of its parts? Come with us as we work the problem and come up with some solid answers.
This isn't the first Mac with more than one processor to come from Apple. Back in 1996, Apple introduced the dual-processor Power Mac 9500 MP. But since then, we've been without multiprocessor Macs. That's because the G3 processor that supplanted the 604 didn't work well in multiple-processor systems. During the G3 era, Apple put multiprocessing on hold.
How things have changed. Today's G4 processor is fully capable of working in tandem with others of its kind, allowing Apple back into the multiprocessor game.
But having two processors inside your Mac doesn't automatically grant you twice the performance of a single-processor machine. The hardware alone isn't enough: both the applications and the system software must be explicitly designed to take advantage of multiple processors. If you spend most of your time using applications that don't support multiprocessing, you won't see much immediate benefit from the second processor in your Mac.
The Traffic Cop In any computer, the operating system doles out processor power. To that end, the OS contains a piece of software called a scheduler, which determines how much processor time your software--including applications and many of the OS's components--can use at any one time. In multiprocessor machines, the scheduler also determines which processor performs specific tasks.
Critics of the Mac operating system have long cited its lack of preemptive multitasking, a system that gives the operating system complete control over which tasks get processor priority. (Mac OS X will offer this feature.) In contrast, since the days of MultiFinder the Mac has used cooperative multitasking, a sort of honor system that allows any program to use the processor until it's ready to let go. That means a misbehaving task can hog the processor, causing all the other programs to slow to a halt.
Although the core of the current Mac OS doesn't do preemptive multitasking, you can find this feature . . . if you know where to look. It's tucked away in Apple's multiprocessing software, built into Mac OS since version 8.6 (and seriously updated in Mac OS 9, paving the way for these new multiprocessor Macs). This component holds the key to making dual-G4 Macs work with today's Mac OS until Mac OS X becomes available.
Apple didn't create multiprocessing on the Mac; that honor goes to now-defunct DayStar Digital, which developed system software to enable its own multiprocessor hardware. DayStar's software add-on, nPower, let apps use multiple PowerPC processors, residing on DayStar's hardware, as application-specific accelerators. This concept gained enough popularity that Apple adopted it.
Since Apple didn't design the classic Mac OS to do its work on multiple processors, it can't take advantage of them. The only beneficiaries of additional processors are pieces of software that take advantage of the preemptive scheduling in Apple's multiprocessing software.
Going It Solo Programs (such as the Finder) not designed to that specification can't use the second processor at all, and some types of programs wouldn't really benefit much from multiprocessing anyway. The speed of your hard drive limits disk-repair utilities, for example, and network speeds, as well as the drive, limit file transfers.
|Here's a list of some of the Mac applications that currently take advantage of multiprocessing in Power Macs:|
|Final Cut Pro||Apple|
|SoundJam MP||Casady & Greene|
|Media 100||Media 100|
|Cinema 4D XL||Maxon|
|Media Cleaner Pro||Terran Interactive|
But plenty of apps do cry out for sheer number-crunching, processor-based performance: MPEG encoders, image processors, 3-D renderers, and the like. These programs--Casady & Greene's SoundJam MP, Adobe Photoshop, and Maxon's Cinema 4D XL, to name three--are most likely to benefit from multiprocessing technology (as well as other performance-boosting systems, such as the Velocity Engine subprocessor on the G4 chip).
The current incarnation of Mac OS supports asymmetrical multiprocessing, a system in which the OS and most apps run on a single processor while a few specific apps take advantage of other available processors. The term describes the imbalance of the load on various processors: in this configuration, the second processor often remains idle instead of speeding your Mac up (see " G4 Sharing: How Multiprocessing Works ").
When Mac OS X arrives, today's dual-processor G4s will really come into their own, because Mac OS X supports symmetrical multiprocessing. This means it treats the available processors equally, balancing the load of your system over the whole array.
By virtue of its internal design, Mac OS X is natively multiprocessor-aware, and all of its functions can run on multiple processors, unlike those of the classic Mac OS. In day-to-day use, multiprocessor machines running Mac OS X should feel snappier than single-processor machines.
Applications written to Apple's Carbon specification will appear in the new Aqua theme, and should offer much better stability (thanks to Mac OS X's new protected-memory model, which prevents a crashing app from bringing down your system). Carbon apps will also take advantage of multiprocessing in ways that current Mac OS applications can't.
Those Carbon apps specifically written to take advantage of multiprocessing will have complete access to the processors. The OS can assign each individual task these apps undertake to a different processor, balancing the load and using processor power as efficiently as possible.
MP Loophole But even if a Mac OS X program wasn't written with multiprocessing in mind, it will benefit. The operating system can still assign different programs to different processors, meaning that program A can run on one G4 while program B toils away on the other. In addition, programs don't work in a vacuum--they're always working in conjunction with the operating system. And since Mac OS X will be multiprocessor-savvy, it will balance all of its own work (such as moving windows and scrolling) across processors.
Apple says multiprocessor-savvy Mac OS 9 programs will still be able to take advantage of multiprocessing when running in OS X's Classic compatibility environment. This means any of today's multiprocessing apps that don't attain Mac OS X-native status in time won't have to give up their multiprocessing abilities--they can use Classic mode.
If you're wondering whether you need a multiprocessor Mac today, it's a simple decision. If you primarily use apps that support multiprocessing, there's no reason not to buy a multiprocessor Mac. But if your most-used apps aren't constrained by the processor, you don't really need a multiprocessor machine. In fact, you won't see any benefit from multiple processors until Mac OS X ships.
Multiprocessing is already quite commonplace on other hardware and OS platforms. Linux, for example, supports symmetrical multiprocessing. Apple's new dual-processor machines should provide a perfect platform for PowerPC-based Linux systems, offering many of the server features we're looking forward to in Mac OS X, well in advance of its arrival.
Once Mac OS X hits the scene, multiprocessing will open up areas where the Mac previously couldn't compete. Many server-based Web applications are very processor-intensive, and the availability of multiple processors in a single Web-server machine will make those apps respond much faster.
It's also possible that new applications for graphics, 3-D, and video will appear, using Mac OS X and multiprocessor systems as a platform. Apple's future hardware-and-software one-two punch will make the Mac a much more viable platform for hard-core, processor-intensive applications.
These days, Intel and its competitors are releasing chips with speeds measured in gigahertz, not megahertz. The clock speed of the PowerPC has lagged behind, and though Apple and Motorola are loath to admit it, these dual-processor Power Macs were created most likely because faster G4 chips just weren't ready.
Still, adding second processors to the Power Mac line is a way for Apple to boost speeds without cranking up the megahertz--and if you're using a multiprocessor-enabled application, you'll get major speed boosts from this pair of chips. Otherwise, these new Power Macs won't run much faster than their predecessors . . . until Mac OS X arrives, that is. Once that happens, the power of the dual-processor Power Mac G4 will multiply, and Apple's multiprocessor math should finally add up.
Contributing Editor Stephan Somogyi has written about Macs and their processors for years. His processor-to-computer ratio remains 1:1.