[Beowulf] Moores Law is dying
ariel sabiguero yawelak
asabigue at fing.edu.uy
Thu Apr 9 06:48:14 PDT 2009
I am not sure that all those GHz are useless in a Desktop. All the users
of the Atom processor I know are kind of disappointed.... 1,6GHz and a
single core does not seem to be enough to run their preferred OS... They
pay that price because they can carry it, but as far as I can
understand, they need more. I can do really a lot with that system, but
I had to understand -not painlessly- that I am not an average user.
Just last year 55000 new security threats were discovered, and thus,
their antivirus systems should try to do something about them... don't
forget about personal firewalls working at the speed of P2P
applications, and all the FX required to run a desktop today. I don't
think all the GHz we have are enough for a regular Vista user (9x% of
the market of multicore personal systems?).
Unfortunately we have not figured out how to use the capabilities of
parallel processing for a Visual Studio programmer, thus, 99% (please,
add more nines as required) of the applications cannot deal with
multiple cores. As we know, a single threaded application today might
run even slower than a few years ago. In some way, we "earned" a few
years in learning how to go parallel thanks to multicore systems. We can
allocate one core for the system, another for the antivirus, another for
the application and we still have one more.... but not on most
notebooks, and even less for uses whose OS put a limit on the number of
cores they are licensed to handle....
What we did? we just "released" all the power of a core to a
single-threaded program while using the other cores to "serve" the
application in foreground. But we still don't know how to solve general
programming things in a parallel system... well, sure we know for
certain applications!, we spawn more threads as more connections arrive
for a web server or for an IMAP server.... and that can really use a
multi processor system. Most of the readers in this list really know how
to solve applications in parallel, even beyond my imagination! All the
science -in parallel- you do really squeezes our systems, but even
though we use COTS systems (and I suffer when you buy equipment from
server vendors instead of building from scratch as original Beowulf was
about -and Google learned to do), we don't have COTS programmers. Think
of the training and know-how required for a skilled parallel programmer.
Parallel programming is still done by artists. A good parallel program
is a rare piece of art.
What about other programs? Well, we need a programmer that has taken, at
least, "101 - parallel programming" or "101 - High Performance
Computing" lectures, which covers only a tiny subset of the humans
writing lines of code.
And please remember all those (barely) humans who specify their problem
in some sort of 4GL language, that is utterly translated into rules,
interpreted and finally executed -singlethreaded- on a processor. Those
guys fly high on GHz and always need more, more, and more GHz. Their
only way to run faster is to get more GHz
I think that, in the end, until we learn how to translate from single
threaded programs written in standard programming languages (yes, Visual
Basic, Java, C#, and so on) into fine-grained parallel code, we are
constrained to pray for GHz to have our systems running faster. Most of
IT is based on reuse (otherwise we might have moved from Fortran and
DOS...) and we have to reuse single threaded things for the years to come.
The users will not be amazed playing some variations of Space Invaders
and Pacman on their mobiles for long.
Bruno Coutinho escribió:
> I think that even if they stop scaling down size of desktop processors
> due lack of interest in more performance,
> someone will continue doing it (even at a much slower rate) for HPC
> No matter how much computing power future processors will have,
> someone will invent a application that needs more.
More information about the Beowulf