You are not entirely correct in asserting that benchmarks
with todays software can be used to predict future
performance with newer software.
It is certainly true that if one uses consistently e.g.
Word and Excel for Windows then one can guess the
"requirements" of future Word and Excel programs by using
todays versions as benchmarks.
The problem, however, is that the WAY we use our computer
(and I am refering to home users and not to business users)
changes and new software is very often implementing new
algorithms that were previously either (a) non-existent or
(b) not feasible on slow computers.
Let me give some examples:
Case (a) : The famous FPU
- Back in the days of the 486 the FPU was considered a
luxury. All fpu tasks ran slow as hell. Intel even
sold its (infamous!) 486SX without FPU (actually
just like the Celeron and its cache, WITH FPU, only
broken). When the Pentium appeared, FPU tasks where
a reality. The first and most important example is
Quake I. Quake I was the first game to actually
REQUIRE a FPU and AMD was seriously damaged: AMD
processors had been optimized for software such as
Word and Excel. They even got their PR (Pentium
Ratings) which where true enough when referring to
business software. In reality, however, everyone,
including Tom's hardware (I am referring to AMD-K6)
would bash them for the bad FPUs because they had
really bad score in Quake.
Noone could have predicted the need for a speedy FPU
back then because that days software meant "integer"
math only software.
Case (b) MP3 arrives (also FPU intensive, btw)
A few years earlier MP3 did not exist. Now it consumes
huge amounts of bandwidth and space.
Same thing happens today with MPEG4.
The point I am trying to make here is that, like SPEC2000,
when you are trying to make a new and stressful benchmark
you should not choose something that runs really well to
see if it will run faster. You should instead choose something that has just become (or will become) available
in the future, because that is what the users will want
and it will define the requirements posed on the processor.
Flask MPEG is a good choice, not because it make the P4 look
good, but because I believe that a lot of people will be
using it in the future and today it barely works (10-20
hours of waiting is really a lot). It is something NEW
and this is what we will want to run on our new processor.
To conclude my (long!) post I should say that I expect
several new algorithms to become significant in the
future, namely:
- video editing and compression (interesting enough, but
barely feasible today)
- voice recognition (everyone has tried it, but it never
worked because the FPU power was not enough to support
voice recognition as a "side" feature of another task
MS will want to launch something like this!)
- Maybe face/fingerprint/retina(?!) recognition (that
would send e-commerce to new heights and many companies
are already working on biometric security)
Such applications (often contained in forward looking
benchmarks like SPEC2000) do pose new strains to a computing
system (CPU + Memory + Graphics etc) and will determine
how we rate our CPUs in everyday use.
As to the future of CPUs, I believe that Intel is correct
in stressing the need for high bandwidth. Current processors
are not easily saturated.
It remains to be seen whether we will see the addition of
bigger and faster caches (perhaps embedded RAM would help),
more intelligent bus utilisation (auto-prefetch is a great
feature!!!) with less cache misses and branch target misses,
a bigger and faster bus or a combination of the three.
Definitely an 128-bit bus should be implemented but it
would hurt current 32-bit performance. (to make it
efficient one would have to request as many as 3 or 4
words for every cycle and in 32-bit processors this is
not possible - not enough units
, it would be extremely
fast in FPU math, however, because current FPUs are
capable of using two 64-bit quantities per cycle).
Faster busses are nice but they come with added complexity
and they need new memory technology such as dual channel
RDRAM to feed them. Such technology is expensive.
ANW, here it is 01:30 AM and I should be sleeping. If I
have written anything stupid you should attribute it to
my sleepiness.
Petros