On Monday, March 4, 2013 11:41:23 PM UTC-6, Brendan Tracey wrote:
I would like to second Anssi's questions about Go's suitability for being
an MPI replacement. It does seem that if you share memory by communicating,
the shared memory restriction shouldn't actually be that tight. I know it's
not easy, but is this something is Go's development plans?
It could probably be used in place of MPI *IF* you were staying inside one
machine with MPI to begin with.
Channels need help with networking, and I have yet to see (and don't expect
to see) channels + rdma so...

On Wednesday, January 30, 2013 4:15:19 AM UTC-8, Anssi Porttikivi wrote:

I am still wondering. If you just refuse to reference global variables in
your goroutines, and if the channels refuse to pass pointers to global
memory, why can't that work on a message-passing parallel hardware?

The compiler can enforce that. Or it can be a "soft" limitation, allowing
you to break that, and the compiler/runtime provides some inefficient
back-up implementation for limited shared memory. In extreme case that
would be simulated with message passing and sw locks. Or it could be
implemented with a limited slow shared hardware bus to shared memory.

So you design Go algorithms for message-passsing-by-value goroutines, if
the hw is great for that.

You could have optimized, automatically or manually controlled,
topography for less than fully cross-switched core connections. The
compiler/scheduler/programmer can try to allocate busy channels so that
their end-point goroutines run on well-connected core airs.

But you could still have occasional access to global data structures, or
run slow bandwith "signalling" channels between non-connected cores. If you
access few kilobytes once in a second, it doesn't matter if it is super
efficient. Even software emulation on strictly message passing hardware
could work.
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Search Discussions

Discussion Posts


Follow ups

Related Discussions



site design / logo © 2021 Grokbase