John said:
It's ironic that most of the compute power in the world goes to
gaming. The most compute-intensive thing we do, in fact the only
compute-intensive thing we do, is fpga p+r. Design-rule checking the
most complex pc board we make takes about 5 seconds on a
standard-performance PC. The rest of what we do is dominated by our
DSL rate.
Whatzisname's law: All computers wait at the same speed.
Even Spice usually runs fast. I guess em simulation could be slow, but
we rarely do that, thank Goodness.
Done the simple-minded way (the way I'd like to do it if I could), one
device design comes out as something like
10**9 cells x 32 bytes x 2 FLOP/byte x 200 steps/cycle x 100 cycles/run
x 100 runs/design =~ 10**17 operations
per design, running in about 32 gig of memory. Could take awhile, even
on a fast parallel machine. The 200 steps/cycle number is needed only
when using silver--because the real part of its index of refraction is
only about 0.1, so the phase velocity in silver is almost 10 times c.
Intel must be running scared; some day pc's will be good enough and
become as exciting as toasters, and $5 Taiwanese cpu's will be
powerful enough.
PCs are already less exciting than toasters--in both good and bad
senses. My microprocessor-controlled toaster has buttons for toasting
bagels and frozen bread, which usually more or less work if it starts
out cold, but I never used to worry about my mechanical toaster crashing
and having to be rebooted (which happens about once a week with this
one). My cluster needs rebooting about twice a year, but doesn't make
good toast.
Commoditization is the eventual fate of just about every technology, and
the whole industry has been scrambling for many years to stay high on
the food chain. IBM gave up making displays, PCs, and disc drives
mostly for that reason.
On the other hand, having the best-performing and most reliable servers
is really important to us, partly because of the price premium, but also
because it drags along a lot of software and consulting revenue. That's
one reason that I've been working on high performance, low power optical
interconnections: in a highly multiprocessor world, bandwidth needs to
grow at least as the square of the number of processor cores if you're
going to keep tight coupling between cores. That tight coupling is
really important because most applications don't parallelize terribly
well, and tight coupling is the only way to keep the average performance
up. Tightly coupled machines are dramatically easier to program, which
is another way of saying the same thing.
It's the software fads that will keep CPU demand going...it's amazing
how many computrons you can soak up by using the revolutionary
interpreted language-du-jour. Good luck running anything written in
Java on even a vanilla Pentium. (Remember when everybody made fun of
Intel for that name?)
Cheers,
Phil Hobbs