I'm going to throw my 2ยข behind Ge. I've done some parallel
programming, and I don't think this is the route we want to go. The
Mac OS "blocks" sound like what most of the CS parallel people have
been talking about how the next wave of parallel computers will be
programmed. It might be a few years, but I think waiting for language
primitives (a fortran-like forall loop, for example) and OS support is
the way to go.
Rogan
On Thu, Jan 29, 2009 at 8:50 AM, Stephen Sinclair
On Wed, Jan 28, 2009 at 11:43 PM, Tom Duff
wrote: On Wed, 28 Jan 2009, Stephen Sinclair wrote:
It's parallel, but not concurrent. ... However, they don't run in separate operating system threads, which would be "concurrent".
Standard terminology in CS is more or less the reverse. "Concurrent" means apparently happening at the same time, "parallel" means executing on more than one CPU. Multi-threaded programs are concurrent, but they're only parallel if they're running on more than one core.
Sorry, my bad, maybe it is the other way around.
I think a big challenge for running shreds in parallel will be dealing with memory issues. Right now it's a big advantage that you can access global variables and things within shreds without worrying about clobbering other shreds, but this would be a problem with true concurrency. Perhaps the best solution would be transactional memory, but it's quite hard to implement from what I understand.
Steve _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users