Editorial - Science & Technology 
Apple, Science, and Computing Myths
By John Martellaro - OSXFAQ Senior Editor - Science & Technology
"Software improvements are not as sexy as hardware improvements.
But one thing I have noticed is that unless there is software
that uses the capacity of that hardware to do interesting things,
it sits idle."
John Robb
President and COO
UserLand Software
From The Harrow Group
Report, 10.21.02
I suppose most of you who are reading this know that I no longer
work for Apple. It's time to move on, and there are many
important things to discuss. And because I've had to bow out of
the commentary business for the last two years, I have a lot of
things pent up and on my mind. Now it's time to unload.
The first thing I want to talk about is the so-called megahertz
myth. One of the things that I learned in my 21 months at Apple
is that the G4 is a very capable CPU for mathematically intensive
scientific and engineering calculations. This is because it has
a very well designed
SIMD
processor for vector operations. In many cases, researchers
who contacted Apple have supplied example vectorized code or
performance data showing how a G4, running at half or a third of
the clock speed of a Pentium can out perform the Pentium.
They've been able to do this because 1) they're smart, 2) they
love the Macintosh platform, and 3) they've figured out how to
exploit the tool they love. I call this effect TSLE, technical
smart love exploitation. TSLE can achieve miracles you never
thought possible on a Macintosh. Or any computer.
In many other cases, due to the nature of the algorithm, the
vector processor cannot play such a strong role, and so really
exciting performance is not possible. (The SPECfp2000 benchmark
is a good example. The code cannot exploit a SIMD system.) In my
work with these researchers, I've seen results all over the
board, and it's pretty much a wash between the maximum possible
performance of a well programmed G4 and a Pentium at two or three
times the G4 clock. There is no substitute for being a
very clever programmer.
Then there are those researchers who lament that they must
maintain portable code, and they don't have time to delve into
the gory details of vector programming - which would muck up
their code base. They simply want the fastest scalar processor
they can get their hands on, whether it's an Alpha or a Pentium 4
running at 2.8 GHz. That's a justifiable position, but it could
have been remedied had there been sufficient resources within
Apple to create and maintain a robust Advanced Computing Group
that could build development tools. Tools that would assist all
comers, make their life easier with the G4, and put real
understanding and technical tools in the hands of anyone who
needs them. Alas, Apple likes to tout the power of the "Velocity
Engine" but cannot afford to actually make it an exploitable tool
for everyday scientific users. As a result, the G4 capability, at
any clock, remains vastly under exploited. What remains is TSLE.
Testosterone Poisoning
There are not very many men and women in the U.S. who are both
scientists and also have the savvy to tune their code to fully
exploit the G4. It's a lot of work, and, as I said, easy to use
tools and tutorials have not been in great abundance. (Of course,
there are even more specialized tools from Veridian, to auto vectorize code, but
that requires yet another level of technical expertise.
Absent vastly superior tools, technology, and understanding to
fully exploit the G4, most users fall back on their Fortran or C
compiler in a 2 GHz Linux system, fiddle with the compiler flags, and
hope for the best.
It's a chicken and egg situation. If the vast majority of
researchers are not routinely exploiting the G4's capability for
science, then science will be perceived to be a marginal market.
Macs with a G4 first shipped in October, 1999, so time and opportunity
have been squandered.
As for the rest of the population, the concept of a high clock
speed has had its ups and downs as a marketing tool. In times
past, many PC customers, intimidated by the complexity of a Windows OS
with 20 million lines of code, have opted to simply go for the
faster system. On the other hand, and especially lately,
customers have come to realize that a 2.8 GHz P4 doesn't gain
them any real advantage in their typical tasks compared to
a 1.4 GHz P3. Some have observed that that has something to do with
the slowdown in the growth of PC sales.
The bottom line is that really high clocks only matter to two
groups of users: 1) Testosterone poisoned Linux geeks with tape
on their eye glasses whose personal self image is tied to the
clock of their PC and 2) Researchers who don't have the time and
inclination to learn a vector processor. This is a very small
percentage of the population. Very small.
Let's get back to those typical tasks. The vast majority of PC
and Macintosh users do not begin to push a personal computer to
its limits. Aside from intensive video operations and special
effects with Final Cut Pro, a typical desktop computer today, a
G4 or P4 with a modern GPU, hardly breaks a sweat as we play
MP3s, surf the Internet, and compose e-mail. If your brain were a
CPU capable of one operation per second, you would see an
incoming key stroke from the keyboard at the rate of one every
five to ten years.
An Alien Viewpoint
At some point, it can be argued, there will be enough computing
power in the hands of a single person or group to make a new, major
breakthrough in science. Whether this happens on a Grid system
with dozens of supercomputers tied together with OC-192 lines or
a single desktop system at 25 GHz, no one knows. It has only
taken a cluster of eight Pentiums and some very good programming
for Deep Fritz
to equal the prowess of the World Chess Champion, Vladmir
Kramnik. (The eight game series recently ended in a tie.)
For some kinds of physics problems, one could argue that the
breakthrough threshold could be on the same order as the
computation achieved by Deep Fritz: examining 3 million Chess
moves per second. In any case, it would be amusing, and more than
a little humiliating, for an extraterrestrial visitor to someday
brief us and casually mention to Stephen Hawking that a mere 500
MHz vector processor and a month's worth of steady computation
were, in principle, all that is needed to figure out how to
travel faster than the speed of light. Then, all of us with dusty
old G4s at 500 MHz could hardly look at ourselves in the mirror
each morning without thinking that we're just plain idiots. Or we
squandered our resources.
The bottom line is that no matter what kind of computer you have
on your desk and no matter what its clock speed, you probably
aren't exploiting it fully. And so, unless you are working at
NSA, NASA, one of the national laboratories or at Genentech, and you
find yourself fighting for every last cycle of computing power, it
is the height of hubris (or worse) to think that you must throw away your
867 MHz G4 in order to procure a 2.8 GHz P4.
There just isn't any substitute for TSLE, the highly intelligent
exploitation of the tool you already have when combined with the
OS you love. (Assuming it's Mac OS X, of course.)
A Matter of Fortune
Apple is a small company, relatively speaking. Its Fortune 500
rank is in the nether regions at #325. Currently, insufficient resources
can be applied to make the full exploitation of the Velocity
Engine a no-brainer for vast numbers of users and developers.
Consequently, for the time being, if you want to get the ultimate
performance out of your Mac, you'll need to do research, study,
practice, and work with colleagues. Resources to do this are listed
below.
The rest of you, with 500 MHz G4s, can either hit the physics
books or go back to surfing the Internet. Your choice, of course.
References:
ADC Developer page for Velocity Engine:
http://developer.apple.com/hardware/ve/
Research from the Apple Advanced Computation Group:
http://developer.apple.com/hardware/ve/acgresearch.html
Apple's Velocity Engine FAQ:
http://www.apple.com/scitech/physicalscience/VE102501.pdf
E-mail comments to John Martellaro
|