From: MitchAlsup on

Nick Maclaren wrote:
> In article <%CESg.422$fP5.194(a)news.cpqcorp.net>,
> Rick Jones <rick.jones2(a)hp.com> writes:
> |> Casper H.S. Dik <Casper.Dik(a)sun.com> wrote:
> |> > It all depends on the bandwidth. (Which means it ain't a pretty
> |> > picture for Intel as long as they keep the FSB)
> |>
> |> Is it really just a question of bandwidth? I would have thought that
> |> application (I'm assuming the system vendors deal with the OSes)
> |> behaviour would be equally important.
>
> Yes and no. The bandwidth is definitely the leading bottleneck.

Er, no:: there are more problems that are latency limited than are
bandwidth limited.

However, the FSB is a similar impediment in both cases.

The whole reason that threading is taking off is the inability of
(implementable) computer (micro)architectures to reduce memory latency.
Threading is a means to tollerate that latency.

<snip>
> Regards,
> Nick Maclaren.

Regards,
Mitch Alsup

From: Gabriel Loh on

> Where do you think the point of diminishing returns might
> be?

I haven't seen the topic come up in the parallel threads, but one
question that's really interesting to think about (at least to me) is
how in the world are you going to deliver power to all of these cores?
BTW, did anyone see if Intel mentioned the total power consumption for
their 80-core demo system? The wattage for the 80-core processor has to
be astronomical, or the power budget per core has to be anemic, or only
3 out of 80 cores can be turned on at anytime.

just my two cents...

-Gabe
From: mike on

"Joe Seigh" <jseigh_01(a)xemaps.com> wrote in message
news:_8mdnSlgO-FYKIbYnZ2dnUVZ_uWdnZ2d(a)comcast.com...
| Jon Forrest wrote:
| > Today I read that we're going to get quad-core processors
| > in 2007, and 80-core processors in 5 years. This has
| > got me to wondering where the point of diminishing returns
| > is for processor cores.
| ...
| > Where do you think the point of diminishing returns might
| > be?
| >
|
| Rethinking this, the question should be what would you do
| with an unlimited number of processors?
|
| For one thing, the operating system would change. Interrupt
| handlers for asynchronous interrupts would go away. You'd have
| dedicated, possibly special purpose, processors to handle devices.
| They're already talking about this with "coprocessors".
|
| The scheduler would go away. No need for it when every thread has
| it's own dedicated hardware thread. This would affect realtime
| programming. No need to play games with thread priorities and
| any of the timeouts that could be caused by not being scheduled
| quickly enough, i.e. no dispatch latency.
|
| Polling and IPC mechanisms would have to be worked on a bit. E.g.
| make things like MONITOR/MWAIT efficient. Possibly some new
| instructions. The hw architects would have to be a little more
| proactive here. The latest proposals from Intel seem to be a little
| lacking here. What's with architectual extensions? It seems to be
| a "ready to fight the last war" kind of thing. Who cares if you can
| run a 20 year old application real fast.
|
| Distributed algorithms would become more important. How do you
| coordinate threads and how do you do it efficiently from a hw
| point of view.
|
| Etc... (more stuff when I think of it)
|
| --
| Joe Seigh
|
| When you get lemons, you make lemonade.
| When you get hardware, you make software.

Do not stop with the OS kernal. Imagine an implementation of SQL
where a thread is spawned for every record in a table!

Mike Sicilian


From: Tommy Thorn on
Bill Todd wrote:
> Well, since IIRC the processing cores are running at a princely 1.91 MHz

Well, you recall incorrectly. It's 3 GHz, cf.
http://www.tomshardware.com/2006/09/27/idf_fall_2006/page2.html

Tommy

From: Joe Seigh on
Nick Maclaren wrote:
> In article <srKdnUtcqoTDaIbYnZ2dnUVZ_rCdnZ2d(a)comcast.com>,
> Joe Seigh <jseigh_01(a)xemaps.com> writes:
> |> Terje Mathisen wrote:
> |> >
> |> > You still need some what to handle async inter-core communication! I.e.
> |> > I believe that you really don't have any choice here, except to make
> |> > most of your cores interruptible.
> |>
> |> Async presumes processors are a scarce commodity and you want to have it
> |> do other work while it's waiting for something to be done. That goes
> |> away if you have unlimited numbers of processors.
>
> Not really. Let's assume that you do have such an infinite number of
> threads, and thread A wants to prod thread B at a time it is doing something
> else. That can't be done without some form of asynchronicity.

Why would B be doing something else if you have an infinite number of threads
on hand to do that something else? This is just a "what if" exercise.

Ok, let me pose this question then. What are the limits to how many cores
one can imagine using? Are there fundimental laws of logic here, or are we the
next generation of punch card mentality?

--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.