The Emperor's new clothes
CASTalk.com Forum Index CASTalk.com
Discussion of DSP, FPGA, storage and embedded system.
 
 FAQFAQ   MemberlistMemberlist     RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
Google
 
Web castalk.com
The Emperor's new clothes
Goto page 1, 2, 3, 4  Next
 
Post new topic   Reply to topic    CASTalk.com Forum Index -> Computer Architecture
Author Message
Joe Seigh
Guest





Posted: Mon Nov 21, 2005 5:15 pm    Post subject: The Emperor's new clothes Reply with quote

So these processor manufacturers all have these
nice new multi-core cpu's but apart from market
hyperbole (these cpu's will save the environment, etc...)
I don't see them actually doing anything to exploit their
potential. By "them", I mean them not us. We of course
know to do. But what's going on to get all the applications
to start exploiting this? The magic parallelization fairy?

--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.
Back to top
Ken Hagan
Guest





Posted: Mon Nov 21, 2005 5:15 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Joe Seigh wrote:
Quote:
So these processor manufacturers all have these
nice new multi-core cpu's but [...] what's going
on to get all the applications to start exploiting
this? The magic parallelization fairy?

Pretty much. For the levels of parallelism on offer
(2- and 4-way) the OS can probably find useful work
to do even when confronted with a single-threaded
program. (If you are running Windows, try using
Performance Monitor to log the number of threads
in the "ready to run" state.

For typical domestic customers, whose most demanding
applications are Office and their web browser, I'd
expect to be able to keep a 4-way system busy.

Apps that make limited explicit use of parallelism may
or may not follow once the hardware is in place. I don't
think it matters.

"Apps" that use some sort of component framework (MTS, ASP,
COM+, .NET) to let the system run them using thread pools
will achieve slightly higher levels of parallelism (at least
when there is real work to do) with no programming effort.

If you want anything more than 8-way parallelism then, yes,
you'll need a fairy, but we aren't there yet.
Back to top
Joe Seigh
Guest





Posted: Mon Nov 21, 2005 11:36 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Ken Hagan wrote:
Quote:
Joe Seigh wrote:

So these processor manufacturers all have these
nice new multi-core cpu's but [...] what's going
on to get all the applications to start exploiting
this? The magic parallelization fairy?


[...]

If you want anything more than 8-way parallelism then, yes,
you'll need a fairy, but we aren't there yet.

Intel's business model used to be just putting out faster
processors. Customers could get an immediate benefit just
by buying the faster processors which meant continued
revenue for Intel. Now with multicores customers can't
get an immediate benefit by buying the new processors
since the apps haven't been changed to exploit multicore.
So no compelling reason to upgrade and a big dent in
Intel's revenue stream. Ditto for the other vendors
as well.

What I don't see are any of the vendors being proactive
here. They're depending entirely for it to occur to the
software vendors that there might be a competitive advantage
if they exploit multicore.


--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.
Back to top
Jeff Kenton
Guest





Posted: Tue Nov 22, 2005 1:15 am    Post subject: Re: The Emperor's new clothes Reply with quote

Ken Hagan wrote:
Quote:
Apps that make limited explicit use of parallelism may
or may not follow once the hardware is in place. I don't
think it matters.

Having helped develop several moderately large scale parallel machines (KSR,
BBN Butterfly, Encore, and some you never heard about), it's clear that the
problem is software. Almost nobody is willing to build parallel applications,
and the tools available to help are still terribly weak. You'll still have
threads, and there will be a use for 4 - 8 processors, but it will be a case
of extra processors running separate tasks at the same time, plus an
occasional killer chess program.

jeff
Back to top
David Magda
Guest





Posted: Tue Nov 22, 2005 7:04 am    Post subject: Re: The Emperor's new clothes Reply with quote

Jeff Kenton <jeffrey.kenton@comcast.net> writes:

Quote:
help are still terribly weak. You'll still have threads, and there
will be a use for 4 - 8 processors, but it will be a case of extra
processors running separate tasks at the same time, plus an
occasional killer chess program.

Under Windows I'm sure Norton will chew up one of the cores. (I'm only
half-kidding.)

--
David Magda <dmagda at ee.ryerson.ca>
Because the innovator has for enemies all those who have done well under
the old conditions, and lukewarm defenders in those who may do well
under the new. -- Niccolo Machiavelli, _The Prince_, Chapter VI
Back to top
Bruce Hoult
Guest





Posted: Tue Nov 22, 2005 9:15 am    Post subject: Re: The Emperor's new clothes Reply with quote

In article <dlsuql$8rj$1$830fa17d@news.demon.co.uk>,
Ken Hagan <K.Hagan@thermoteknix.co.uk> wrote:

Quote:
Joe Seigh wrote:
So these processor manufacturers all have these
nice new multi-core cpu's but [...] what's going
on to get all the applications to start exploiting
this? The magic parallelization fairy?

Pretty much. For the levels of parallelism on offer
(2- and 4-way) the OS can probably find useful work
to do even when confronted with a single-threaded
program. (If you are running Windows, try using
Performance Monitor to log the number of threads
in the "ready to run" state.

For typical domestic customers, whose most demanding
applications are Office and their web browser, I'd
expect to be able to keep a 4-way system busy.

Apps that make limited explicit use of parallelism may
or may not follow once the hardware is in place. I don't
think it matters.

There are plenty on the Mac. iTunes (ripping CDs), iMovie, iDvd,
Photoshop, QuickTime all know how to keep 4 CPUs busy on the new 4-way
Macs. (and there are many, many dual CPU Macs out there ranging from
400 MHz to 2.7 Ghz).

--
Bruce | 41.1670S | \ spoken | -+-
Hoult | 174.8263E | /\ here. | ----------O----------
Back to top
Chris Thomasson
Guest





Posted: Tue Nov 22, 2005 9:15 am    Post subject: Re: The Emperor's new clothes Reply with quote

"Joe Seigh" <jseigh_01@xemaps.com> wrote in message
news:iKudnfC1qrPxZRzenZ2dnUVZ_tGdnZ2d@comcast.com...
Quote:
So these processor manufacturers all have these
nice new multi-core cpu's but apart from market
hyperbole (these cpu's will save the environment, etc...)
I don't see them actually doing anything to exploit their
potential. By "them", I mean them not us. We of course
know to do. But what's going on to get all the applications
to start exploiting this?

Well, Intel's current research seems to be moving toward transactional
memory:

http://www.cambridge.intel-research.net/~rennals/faststm.html


In the near future they may be pushing developers to convert their
applications critical sections into transactions. I believe that they are
going to start to advertise transactional memory as a "general solution"
that can directly address the new multi-core processors that are coming out.
If the do take that path, I am not sure how well its going to work out for
them. They will probably need to put a transactional memory implementation
in the hardware itself. Something like this:

http://ogun.stanford.edu/~kunle/publications/tcc_isca2004.pdf


I am not too sure how well this would scale... It seems as though it could
possibly suffer from livelock-like situations under certain circumstances.
For instance, simple false-sharing may cause some transactions to abort. I
think it would be similar to the live-lock that can occur when there is
false-sharing on a LL/SC based lock-free LIFO anchor and/or nodes;
reservation granularity you know...




Quote:
The magic parallelization fairy?

Well, the fact that double-width compare-and-swap did not get "reliably"
ported to 64-bit architectures make be think that may be relying on a
magical fairy to come down and show application developers the light...
Luckily there are some algorithms out there (e.g., VZOOM and RCU-SMR) that
can help applications boost performance and efficiently scale-up to the new
multi-core designs right now. However, in order for this stuff to really
take off I believe that its going to take somebody to "bite-the-bullet" and
incorporate one of these solutions into their application architecture. Then
let the performance and scalability improvement(s) speak for themselves...

:)




As of now I am only using VZOOM for in-house projects. Maybe I should do
something commercial with it... Ahhhh, it would probably be a waste of
time... Perhaps I should use it to implement a speedy STM framework, since
transactions seem to be the way things are going to go anyway...

;)
Back to top
Ken Hagan
Guest





Posted: Tue Nov 22, 2005 4:52 pm    Post subject: Re: The Emperor's new clothes Reply with quote

David Magda wrote:
Quote:

Under Windows I'm sure Norton will chew up one of the cores.
(I'm only half-kidding.)

Lots of corporate customers have no choice but to run such filth, so
they will see an immediate benefit. (I'm not even half-kidding.)
Back to top
Ken Hagan
Guest





Posted: Tue Nov 22, 2005 5:07 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Quote:
Ken Hagan wrote:

Apps that make limited explicit use of parallelism may
or may not follow once the hardware is in place. I don't
think it matters.

Jeff Kenton wrote:
Quote:

Having helped develop several moderately large scale parallel machines
(KSR, BBN Butterfly, Encore, and some you never heard about), it's clear
that the problem is software. Almost nobody is willing to build
parallel applications, and the tools available to help are still
terribly weak. You'll still have threads, and there will be a use for 4
- 8 processors, but it will be a case of extra processors running
separate tasks at the same time, plus an occasional killer chess program.

I agree, and perhaps I wasn't clear. My point is that *existing*
software can exploit 2- and 4- core systems. The hardware is not (yet)
running ahead of the software. We won't hit that problem until 2010-ish.

On an optimistic note, in the next four years, developers will have
an incentive to write software that runs equally well on 1, 2 or 4
core systems. They've never had that before, and it isn't *that* hard
in many cases, so things might just be different this time. Having done
that, such software might not suck on 8 or 16 core systems. We may have
almost a decade before we need a solution to the hard problem.
Back to top
Joe Seigh
Guest





Posted: Tue Nov 22, 2005 5:15 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Chris Thomasson wrote:
Quote:
"Joe Seigh" <jseigh_01@xemaps.com> wrote in message
news:iKudnfC1qrPxZRzenZ2dnUVZ_tGdnZ2d@comcast.com...

So these processor manufacturers all have these
nice new multi-core cpu's but apart from market
hyperbole (these cpu's will save the environment, etc...)
I don't see them actually doing anything to exploit their
potential. By "them", I mean them not us. We of course
know to do. But what's going on to get all the applications
to start exploiting this?

[...]


The magic parallelization fairy?


Well, the fact that double-width compare-and-swap did not get "reliably"
ported to 64-bit architectures make be think that may be relying on a
magical fairy to come down and show application developers the light...
Luckily there are some algorithms out there (e.g., VZOOM and RCU-SMR) that
can help applications boost performance and efficiently scale-up to the new
multi-core designs right now. However, in order for this stuff to really
take off I believe that its going to take somebody to "bite-the-bullet" and
incorporate one of these solutions into their application architecture. Then
let the performance and scalability improvement(s) speak for themselves...

Yes, but when. I can just see that in some Intel/Sun/... quarterly earnings

report. "Eventually someone will 'bite-the-bullet' and start exploiting
multicores and then people will buy our cpu's again". Seems strange
expecially for Intel which doesn't like to leave things to chance.

Quote:


As of now I am only using VZOOM for in-house projects. Maybe I should do
something commercial with it... Ahhhh, it would probably be a waste of
time... Perhaps I should use it to implement a speedy STM framework, since
transactions seem to be the way things are going to go anyway...


I see you've found out that application bloat has certainly raised the
barrier to entry.


--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.
Back to top
Joe Seigh
Guest





Posted: Tue Nov 22, 2005 5:15 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Ken Hagan wrote:

[...]
Quote:
I agree, and perhaps I wasn't clear. My point is that *existing*
software can exploit 2- and 4- core systems. The hardware is not (yet)
running ahead of the software. We won't hit that problem until 2010-ish.

On an optimistic note, in the next four years, developers will have
an incentive to write software that runs equally well on 1, 2 or 4
core systems. They've never had that before, and it isn't *that* hard
in many cases, so things might just be different this time. Having done
that, such software might not suck on 8 or 16 core systems. We may have
almost a decade before we need a solution to the hard problem.

8 and 16 processors is about when you start running into scalability
problems and it gets expotentially worse. If the nature of the solution
is we can just plug it in and everything runs faster just like plugging
in a faster processor used to do, then we'll be okay. Otherwise...

--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.
Back to top
Joe Seigh
Guest





Posted: Tue Nov 22, 2005 5:15 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Chris Thomasson wrote:
Quote:
"Joe Seigh" <jseigh_01@xemaps.com> wrote in message


The magic parallelization fairy?


Well, the fact that double-width compare-and-swap did not get "reliably"
ported to 64-bit architectures make be think that may be relying on a
magical fairy to come down and show application developers the light...

I should add that I have a work around for that problem for one
situations at least. It's lock-free and doesn't involve KCSS (k-compare,
single swap) which is only obstruction-free. The only real beneficiary
would be sparc which doesn't have double wide compare and swap. It's not
likely that I'll get a Niagara processor to play around with however.


--
Joe Seigh

When you get lemons, you make lemonade.
When you get hardware, you make software.
Back to top
Eric P.
Guest





Posted: Tue Nov 22, 2005 5:15 pm    Post subject: Re: The Emperor's new clothes Reply with quote

Joe Seigh wrote:
Quote:

Yes, but when. I can just see that in some Intel/Sun/... quarterly earnings
report. "Eventually someone will 'bite-the-bullet' and start exploiting
multicores and then people will buy our cpu's again". Seems strange
expecially for Intel which doesn't like to leave things to chance.

It depends on which market you are considering. If it is the mass
home, small business and office desktop market then they are
simply acknowledging that it will take more than ads with the
double mint twins dancing in bunny suits to sell du-lies,
and that the traditional "new front grill on this years model"
or the "my GHz are bigger than yours" approaches of the past
probably won't work.

Without that mass market, it remains a specialized and
only certain app producers will make the effort.

Eric
Back to top
Russell Crook - Computer
Guest





Posted: Wed Nov 23, 2005 12:03 am    Post subject: Re: The Emperor's new clothes Reply with quote

Joe Seigh wrote:
Quote:
Chris Thomasson wrote:

"Joe Seigh" <jseigh_01@xemaps.com> wrote in message

The magic parallelization fairy?

Probably. Said fairy was obviously around for all the
existing software that works well on 8, 16, 32, 64 etc.
way systems (database applications, web servers, that kind of stuff).
There are many, many such systems running today.

IOW, stuff that already runs well on larger arity SMPs
is likely to run well on many core/many thread chips.

Russell
Back to top
Brian Hurt
Guest





Posted: Wed Nov 23, 2005 1:15 am    Post subject: Re: The Emperor's new clothes Reply with quote

Ken Hagan <K.Hagan@thermoteknix.co.uk> writes:

Quote:
Ken Hagan wrote:

Apps that make limited explicit use of parallelism may
or may not follow once the hardware is in place. I don't
think it matters.

Jeff Kenton wrote:

Having helped develop several moderately large scale parallel machines
(KSR, BBN Butterfly, Encore, and some you never heard about), it's clear
that the problem is software. Almost nobody is willing to build
parallel applications, and the tools available to help are still
terribly weak. You'll still have threads, and there will be a use for 4
- 8 processors, but it will be a case of extra processors running
separate tasks at the same time, plus an occasional killer chess program.

I agree, and perhaps I wasn't clear. My point is that *existing*
software can exploit 2- and 4- core systems. The hardware is not (yet)
running ahead of the software. We won't hit that problem until 2010-ish.

Over 4 cores, yeah- 2010 is a good guess, as I'd say the 4-cores will
be hitting the streets late 2007-2008.

What is worrisome is the implicit assumption here is that this is it.
The current generation of chips are hitting a wall- we can't make
single threaded apps any faster. The only thing to do with more
transistors is to simply add cores. So we have dual core today, quad
core in 2-3 years, eight core 2-3 years after that, etc. By 2020,
we're looking at 32 to 256 cores on a chip, with the mean being like
64-128 cores. Not to mention the increasing popularity of multi-chip
configurations. In 15 years, mid-level systems could have 512 to 1024
cores. We're reasonably certain Moore's law will continue until at
least then.

Quote:
On an optimistic note, in the next four years, developers will have
an incentive to write software that runs equally well on 1, 2 or 4
core systems. They've never had that before, and it isn't *that* hard
in many cases, so things might just be different this time. Having done
that, such software might not suck on 8 or 16 core systems. We may have
almost a decade before we need a solution to the hard problem.

The threads & locks model (or the minor variant of threads & monitors
used in Java and C#) doesn't scale. It doesn't scale to hundreds or
thousands of threads. In addition to all of the current bugs, you add
all of the bugs that multithreading brings with it- race conditions,
deadlocks, livelocks. Not to mention scalability issues- applications
needing to run on 5-year CPUs (the equivelent of P3s or Athlons today)
with only 4 cores, up to the new top of the line workstations with 512
cores, efficiently.

In addition to this we have the increasing complexity of software- a
race we seem to be losing even without the added complexity of
parallelism.

And remember that what an extremely talented programmer can do is, by
and large, irrelevent to the debate. It's what the below-average
programmer can do that's relevent. Because there are a hell of a lot
more average and below average programmers out there, and we have to
use their software as well. In fact, generally their software is
mixed in with the software of the extraordinary programmers. There's
an old saw that applies here- if you add a tablespoon of wine to a
barrel of sewage, you get sewage. However, if you add a tablespoon of
sewage to a barrel of wine, you still get sewage.

I have some suspicions as to what that solution might look like. I'm
not sure I'm right, but one thing I am sure of: the solution will
*NOT* look like C++ or Java or C# or Ruby or Python or C or PHP or
Perl or etc. Which raises the question: were such a solution to exist
(one that is very different from current popular languages), would the
"mainstream" adopt it? Especially Mr. "I don't learn a new language
until my employeer sends me off to school, and maybe not even then"
Below-Average Programmer? Especially if the solution came out of
(shudder- the horror! the horror!) academia!

Which is why I predict that things will get much, much worse before
they get any better.

Brian
Back to top
 
Post new topic   Reply to topic    CASTalk.com Forum Index -> Computer Architecture All times are GMT
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




VoIP Electronics Powered by phpBB