digitalmars.D - Will D 2.0 concurrency be supported between processes?
- Michal Minich (6/6) Jan 19 2010 Will the currently-being-designed message-passing concurrency be support...
- Simen kjaeraas (6/12) Jan 19 2010 The goal is for it to work seamlessly between threads, processes or even...
- Simen kjaeraas (6/12) Jan 19 2010 The goal is for it to work seamlessly between threads, processes or even...
- Sean Kelly (3/8) Jan 19 2010 User threads (fibers) may be used at some point, and this should be invi...
- Andrei Alexandrescu (7/14) Jan 19 2010 Right now we don't have time to focus on more than inter-thread
- retard (6/23) Jan 19 2010 I haven't seen a single mention of what kind of algoritms can be solved
- Andrei Alexandrescu (3/27) Jan 19 2010 Must mean you haven't looked. Message passing is a well-understood parad...
- retard (11/39) Jan 19 2010 You gotta be kidding. If the message passing framework abstracts away al...
- Andrei Alexandrescu (6/45) Jan 19 2010 SIMD-style data-parallel computation is not something we are currently
Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.
Jan 19 2010
On Tue, 19 Jan 2010 14:24:27 +0100, Michal Minich <michal.minich gmail.com> wrote:Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.The goal is for it to work seamlessly between threads, processes or even different computers. -- Simen
Jan 19 2010
On Tue, 19 Jan 2010 14:24:27 +0100, Michal Minich <michal.minich gmail.com> wrote:Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.The goal is for it to work seamlessly between threads, processes or even different computers. -- Simen
Jan 19 2010
Michal Minich Wrote:Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned?Both, but initially only between threads.Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future?User threads (fibers) may be used at some point, and this should be invisible to the user. Network messaging will definitely be added. These won't be available in the initial release however.
Jan 19 2010
Michal Minich wrote:Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.Right now we don't have time to focus on more than inter-thread communication. Sean and I had a pow-wow last week and decided we don't have the resources to address more than that. But definitely the design has an eye on future extensibility, of which inter-process communication is an obvious extension. Andrei
Jan 19 2010
Tue, 19 Jan 2010 08:32:19 -0800, Andrei Alexandrescu wrote:Michal Minich wrote:I haven't seen a single mention of what kind of algoritms can be solved efficiently with this framework. Is it good for parallel algorithms like parallel matrix multiplication, merge sort, producer/consumer problems, serving web pages, rendering fractals, blitting images, parallel parsing, handling RPC or GUIs?Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.Right now we don't have time to focus on more than inter-thread communication. Sean and I had a pow-wow last week and decided we don't have the resources to address more than that. But definitely the design has an eye on future extensibility, of which inter-process communication is an obvious extension. Andrei
Jan 19 2010
retard wrote:Tue, 19 Jan 2010 08:32:19 -0800, Andrei Alexandrescu wrote:Must mean you haven't looked. Message passing is a well-understood paradigm. AndreiMichal Minich wrote:I haven't seen a single mention of what kind of algoritms can be solved efficiently with this framework. Is it good for parallel algorithms like parallel matrix multiplication, merge sort, producer/consumer problems, serving web pages, rendering fractals, blitting images, parallel parsing, handling RPC or GUIs?Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.Right now we don't have time to focus on more than inter-thread communication. Sean and I had a pow-wow last week and decided we don't have the resources to address more than that. But definitely the design has an eye on future extensibility, of which inter-process communication is an obvious extension. Andrei
Jan 19 2010
Tue, 19 Jan 2010 11:02:08 -0800, Andrei Alexandrescu wrote:retard wrote:You gotta be kidding. If the message passing framework abstracts away all information about communication latencies, how can one tune the algorithm to take advantage of data locality? I have both knowledge of theoretic models such as Hoare's CSP and practical systems such as MPI and MPI-2. I just want to know how your system maps 2+ processes to data parallel SSE instructions when data locality is very high, to threads with shared memory when the locality is a bit lower and how it groups execution into larger chunks on NUMA and multi-computer clusters. Does it handle this all internally when you run a foreach loop or do you have more fine- grained control over data?Tue, 19 Jan 2010 08:32:19 -0800, Andrei Alexandrescu wrote:Must mean you haven't looked. Message passing is a well-understood paradigm.Michal Minich wrote:I haven't seen a single mention of what kind of algoritms can be solved efficiently with this framework. Is it good for parallel algorithms like parallel matrix multiplication, merge sort, producer/consumer problems, serving web pages, rendering fractals, blitting images, parallel parsing, handling RPC or GUIs?Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.Right now we don't have time to focus on more than inter-thread communication. Sean and I had a pow-wow last week and decided we don't have the resources to address more than that. But definitely the design has an eye on future extensibility, of which inter-process communication is an obvious extension. Andrei
Jan 19 2010
retard wrote:Tue, 19 Jan 2010 11:02:08 -0800, Andrei Alexandrescu wrote:SIMD-style data-parallel computation is not something we are currently addressing explicitly in the type system and in the standard library. You are welcome to contribute such APIs though; your level of knowledge definitely makes you the most appropriate potential contributor. Andreiretard wrote:You gotta be kidding. If the message passing framework abstracts away all information about communication latencies, how can one tune the algorithm to take advantage of data locality? I have both knowledge of theoretic models such as Hoare's CSP and practical systems such as MPI and MPI-2. I just want to know how your system maps 2+ processes to data parallel SSE instructions when data locality is very high, to threads with shared memory when the locality is a bit lower and how it groups execution into larger chunks on NUMA and multi-computer clusters. Does it handle this all internally when you run a foreach loop or do you have more fine- grained control over data?Tue, 19 Jan 2010 08:32:19 -0800, Andrei Alexandrescu wrote:Must mean you haven't looked. Message passing is a well-understood paradigm.Michal Minich wrote:I haven't seen a single mention of what kind of algoritms can be solved efficiently with this framework. Is it good for parallel algorithms like parallel matrix multiplication, merge sort, producer/consumer problems, serving web pages, rendering fractals, blitting images, parallel parsing, handling RPC or GUIs?Will the currently-being-designed message-passing concurrency be supported between OS processes? Or only OS threads supported is planned? Others may be probably interested in: light-weight threads, cooperative concurrency and communication through network? If the implementation is not planned for initial release, is it planned for foreseeable future? Thank you for answer.Right now we don't have time to focus on more than inter-thread communication. Sean and I had a pow-wow last week and decided we don't have the resources to address more than that. But definitely the design has an eye on future extensibility, of which inter-process communication is an obvious extension. Andrei
Jan 19 2010