Welcome Guest. | Log In| Register | Membership Benefits
May 13, 1998 (3:00 PM EDT)

Apple Ties Mac's Future To AltiVec Instructions

Apple Ties Mac's Future To AltiVec Instructions

By Craig Matsumoto,

Apple will use the AltiVec instruction set in Macintosh computers and expects to have AltiVec-enabled Macs for sale in the first half of next year, the company said at its Worldwide Developers Conference Tuesday.

It it still unclear what effect these plans will have on Apple's relationship with IBM, which will continue to develop PowerPC processors without AltiVec. Apple officials made it clear that AltiVec is a big part of the Mac's future -- the Mac OS is even being altered to exploit the instructions.

Speaking at the conference's hardware keynote, senior vice president of hardware engineering Jon Rubinstein said Apple had spent two years assisting Motorola in developing AltiVec, which consists of 162 new PowerPC instructions that target multimedia applications and are optimized for Mac OS native code.

"This is not some tacky little add-on to the chip," said Keith Diefendorff, director of processing architecture for Apple, and the company's chief AltiVec architect. "This is a significant investment in transistors."

Company officials spoke to a largely supportive crowd at the conference. Many of the developers attending Diefendorff's session on the PowerPC's future developments were anxious to get their hands on development tools for AltiVec, and Diefendorff drew strong murmurs of approval when he hinted at some of the functionality AltiVec could make possible, such as a software-based cellular phone inside a laptop computer.

Initially dubbed "VMX," for "vector multimedia extension," AltiVec adds an independent vector unit, aside from the integer and floating-point units within a chip, to provide a faster and wider path for multimedia-driven calculations. The vector unit has 32 registers of 128 bits each, and a dedicated 128-bit pipeline to memory, which is wider than the 64 bits available to the floating-point unit.

Apple hopes AltiVec goes beyond its multimedia roots and provides a speed boost to any algorithm that can take advantage of parallel processing. Apple has already tried this with several algorithms, and Diefendorff encouraged developers to do the same.

"The real speed-up will be from people who go into their algorithms and rewrite them with vector [operations] in mind," he said. Apple will do some fine-tuning, and plans to tweak its Mac OS and QuickTime Media Artchitecture to better exploit AltiVec, he said.

Other advantages of AltiVec are more subtle. A PowerPC with the instructions will use no separate hardware for division or square roots, for example, and will instead do these calculations through a Newton-Raphson refinement based on a reciprocal estimate.

The instruction set compares extremely well to Intel's much-publicized MMX instructions, Diefendorff said, because AltiVec provides more ambitious improvements to the CPU and adds a richer set of digital signal processing functions. "AltiVec would blow MMX away on everything, and that's on top of the fact that a regular PowerPC blows away MMX on just about everything," Diefendorff said.

Using the cycle-accurate simulator Apple is developing for AltiVec, the company has estimated that a 400-MHz AltiVec-ready PowerPC can perform 12.8 billion arithmentic operations per second, and 6.4 billion additional byte-crossbar operations per second. In the floating-point realm, that same processor hits 2.3 gigaflops and 1.6 billion floating-point crossbar operations per second.

Diefendorff provided details on several of AltiVec's new instructions, the most intriguing of which is the "permute" function. Single-instruction, multiple data (SIMD) structures, such as AltiVec, traditionally require data to be organized in a certain way, Diefendorff said, and manipulating the data appropriately can take enough time to wipe out all of SIMD's speed advantages. AltiVec can re-permute each register, matching the data to SIMD's expectations in a single command. Diefendorff said this function can be useful in other ways as well, such as building ad hoc look-up tables for digital signal processor functions.

AltiVec also features commands for "compare" and "select." The first does a Boolean element-by-element comparison between two registers; the second fills a third register based on the "compare" results. This is useful in graphics, for example, where "compare" can be used to determine holes in a shape, and "select" can tell the PowerPC to fill in the appropriate background wherever such holes appear.

A feature called "data stream prefetch" can be used to load data for algorithms to use later, thus saving time to execute particularly complex algorithms. Up to four prefetch streams can be run at once.

A few AltiVec development tools are available now, and some require nondisclosure agreements. Apple plans to release a full suite of tools in the second half of this year. Questions on the instruction set are being fielded by Apple via e-mail.


CAREER CENTER
Ready to take that job and shove it?
SEARCH
Function:

Keyword(s):

State:
SPONSOR
RECENT JOB POSTINGS
CAREER NEWS
Go beyond Google and get vertical. These specialized search sites will help you find the business information you need -- fast.

Ari Balogh was named to the post of chief technology officer as the companys for a "realignment" of employees.

Advertisement


TechSearch for related stories



Specialty Resources

Featured Microsite


Microsites

Featured Topic

Additional Topics

Crush The Competition

TechWeb's FREE e-mail newsletters deliver the news you need to come out on top.

Techencyclopedia

Get definitions for more than 20,000 IT terms.

Techwebcasts

Editorial and vendor perspectives


Vendor Resources


Focal Points