Parallel programming

Markus Koskimies markus at reaaliaika.net
Tue Jul 15 18:15:23 PDT 2008


On Wed, 16 Jul 2008 00:53:28 +0000, Sean Kelly wrote:

> == Quote from Markus Koskimies (markus at reaaliaika.net)'s article
>>
>> If I would asked to say what is the way of writing future programs, I
>> would say it is MPS (Message Passing Systems), refer to e.g. Hewitt's
>> Actor Model (1973).
> 
> I agree completely.  MP is easy to comprehend (it's how people naturally
> operate) and the tech behind it is extremely well established. 

I couldn't agree more. MP is very natural way for us humans to organize 
parallel things. But there is even more behind it; the very fundamental 
reason that restricts computers to come PRAM machines is this our world 
around us. It restricts all physical machines, including computers to 
maximum of three spatial dimensions, and inherently neighborhood 
connected models; and those are very very far from ideal PRAM things...

> I remain
> skeptical that we'll see a tremendous amount of automatic
> parallelization of ostensibly procedural code by the interpreter (ie.
> compiler or VM).  For one thing, it complicates debugging tremendously,
> not to mention the error conditions that such translation can introduce.

Another thing I completely agree. It is not about what could be ideally 
best things, it is the reality that matters. Debugging a highly parallel 
thing, e.g. FPGA hardware, is very, very time-consuming thing.

> As an potentially relevant anecdote, after Herb Sutter's presentation on
> Concur [...]

Many highly skillful people are very bound to the great ideas they have 
in their mind. I'm not an exception :)

>> Furthermore, I would predict processors to start to do low-level
>> reconfigurations, e.g. RSIP (Reconfigurable Instruction Set Processor)
>> -paradigm. Look google for GARP and the awesome performance
>> increasements it can offer for certain tasks.
> 
> Interestingly, parallel programming is the topic covered by ACM
> Communications magazine this month, and I believe there is a bit about
> this sort of hardware parallelism in addition to transactional memory,
> etc.  The articles I've read so far have all been well-reasoned and
> pretty honest about the benefits and problems with each idea.

If reconfigurable computers - and more or less distributed computing - 
does not come as next major processor architectures, I will go to some 
distant place and shame. They are not ideal nor optimal computers, far 
from that - programming one is very laborous and it is very hard for 
compilers. But they just work.



More information about the Digitalmars-d mailing list