Clarification and a note for Mikael Grev:

My first point about single CPU cores not becoming any faster wasn't
from Mark Reinhold, but from Brian Goetz. You can see his talk on
devoxx.parleys.com pretty soon if you pay the $75 subscription, or
anywhere from 6 to 12 months from now for free. Excellent talk. You
should watch it sometime. Scratch that, from your statement, you
_need_ to watch it.

Innovative folk HAVE found a solution: Multiple cores. Moore's law is
as alive as ever, but the extra transistors are being employed in
extra cores.

In case you still cling to this 'screw it, innovation will take care
of itself' feeling, you're dead wrong. Because this has all happened
before.

In the days of yore, most folks programmed their chips in straight
assembler, especially for system level stuff.

But today, we don't do that anymore; we use at least C, possibly an
even higher abstraction. The reason is this: A long time ago, chip
design moved from CISC to RISC design. From many assembler opcodes,
focussed around how a human might write assembler, to a smaller set,
with seemingly arbitrary restrictions. That move was precipitated by
hardware design limits too, and the world moved on because of a
*software model* update: Start writing in C, and the C compiler can
build RISC-style assembler just fine, even if its excruciating for a
human.

Now, we're going through another such software model update: More
threads, to keep those cores busy.

NB: A fun highlight about why single cores are stuck where we are: On
modern chips, the time between 2 clock ticks is so tiny that a ray of
light *WILL NOT* cover the physical size of the chip in that time. As
the speed of light is the absolute limit for information transfer,
this means one unit of information cannot reach all parts of your chip
in one clocktick. Hence, clock speed is pretty much at its peak, as
designing instructions to work around chips that are extremely
localized is HARDER than designing instructions to parallelize more.
Why make it hard for ourselves? Either way, you'll need to learn to
write software in a somewhat different way.

Math: 
http://www.google.com/search?hl=en&client=safari&rls=en-us&q=c+*+%281s+%2F+4000000000%29&aq=f&oq=&aqi=

 --Reinier Zwitserloot

On Nov 25, 2:01 pm, Mikael Grev <[email protected]> wrote:
> > 1. a single CPU core is not going to become any faster. That's right;
> > a single thread is never going to run any faster in the future. We've
> > reached the end of the line as far as clock speed and on-chip
> > parallelization is concerned.
>
> Bill Gates said that 640k was more than anyone would ever need.
>
> Something tells me that some innovative person will find a way to
> circumvent the problem.
>
> :)
>
> Cheers,
> Mikael

--

You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.


Reply via email to