Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: Multi-core and the future

by BerntB (Deacon)
on Sep 01, 2008 at 04:34 UTC ( [id://708108]=note: print w/replies, xml ) Need Help??


in reply to Re: Multi-core and the future
in thread Multi-core and the future

Hmm... interesting.

Don't take it badly, but you also seem a bit old, like me. :-) So I'll assume that you know what I am talking about when I ask:
What is the present thinking on the programming model for the Connection Machine? How does that weird vector processing stuff for non-numerical data relate to your argument?

Replies are listed 'Best First'.
Re^3: Multi-core and the future
by tilly (Archbishop) on Sep 01, 2008 at 21:47 UTC
    I don't know enough to tell you the present thinking. I can, however, tell you my thinking.

    My thinking is that it is an interesting computing architecture that they did a lot of research on and never found enough real applications for. Which is why the company folded. Nobody else has found applications for it either, which is why you haven't seen it reintroduced.

    However your vector processing comment reminds me of some stuff I saw involving using GPUs for MD5 hashing, resulting in code that runs dozens of times faster than it does on a regular CPU. See http://majuric.org/software/cudamd5/ and http://www.schneier.com/blog/archives/2007/10/speeding_up_pas.html for the details.

    Of course a GPU is not good for general purpose computing. It is fast for certain tasks, and certain tasks only. So what you'd want to do is to make a call to a function that offloads the work to the GPU.

    My suspicion is that a similar strategy will work well for dealing with many cores. For example consider your basic webserver. You can get lots of naive parallelism by having one or two processes per CPU. And then the heavy lifting can be done in a database. Within the database certain algorithms, for instance sorting, may be written to make use of as much parallelism as is available.

    So the result is that the programmer writes, as today, naive single-threaded code. However both in the webservers and in the database, parallelism will be extracted and used where appropriate. Better yet, this is done with no need for having special support for it in the language.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://708108]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (7)
As of 2024-03-28 14:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found