Bartosz Milewski Missing post
Sean Kelly
sean at invisibleduck.org
Fri May 29 09:25:29 PDT 2009
BCS wrote:
> Reply to Andrei,
>
>> It follows that message passing is not only an attractive model
>
> I'm thinking implementation not model. How is the message passing
> implemented? OS system calls (probably on top of kernel level shared
> memory)? user space shared memory? Special hardware? If you can't get
> #3, I'd rather a good standard implemntation using #2 (and a back door :).
I think it depends on whether the message is intraprocess or
interprocess. In the first case, I expect message passing would
probably be done via user space shared memory if possible (things get a
bit weird with per-thread heaps). In the latter case, a kernel api
would probably be used if possible--perhaps TIPC or something related to
MPI. It's the back door bit that's at issue right now. Should the
language provide full explicit support for the intraprocess message
passing? ie. move semantics, memory protection, etc?
>> for programming at large, but also a model that's closer to
>> machine than memory sharing.
>
> I think I see what your getting at,.. even for shared memory on a deep
> cache; the cache invalidation system /is/ your message path.
Yeah kinda. Look at NUMA machines, for example (SPARC, etc). I expect
that NUMA architectures will become increasingly common in the coming
years, and it makes total sense to try and build a language that expects
such a model.
More information about the Digitalmars-d
mailing list