9 Jul 04:00
Re: Message queues: TIsland vs TIslandController
From: Matthew Fulmer <tapplek <at> gmail.com>
Subject: Re: Message queues: TIsland vs TIslandController
Newsgroups: gmane.comp.lang.smalltalk.croquet.devel
Date: 2008-07-09 02:00:51 GMT
Expires: This article expires on 2008-07-23
Subject: Re: Message queues: TIsland vs TIslandController
Newsgroups: gmane.comp.lang.smalltalk.croquet.devel
Date: 2008-07-09 02:00:51 GMT
Expires: This article expires on 2008-07-23
On Tue, Jul 08, 2008 at 06:38:47PM -0700, Andreas Raab wrote: > This is exactly how it works. The island's event queue is a priority > queue of messages, sorted by time. TIsland methods like #decode:, > #scheduleMessage:at:, and #advanceTo: can be used to deliver, schedule > and execute messages up to any time you'd like to. TIslandController and > friends use this API to "run" the islands by controlling the flow of > time coming from the router. It is utterly trivial to write a little > loop that executes all outstanding messages right away but it is also > utterly pointlessWell, that is exactly what I want to do. I want to use islands to handle parallel computation, like a higher-level MPI. Computation is timeless. I am working on how to demo this by writing a parallel raytracer using islands as the units of parallism. It would also be useful to have a controller that released messages under user controll, so that islands could be stepped, one message at a time, like the Tweak debugger can do, except with an entire island. I guess it's just a simple matter of programming. > A more realistic thing to try is to run the > messages based on the local wall clock which TLocalController does. > > And just in case you are wondering why this is being factored into the > various controllers instead of subclassing TIsland - that's because you > can't snapshot an image segment for replication with all that crap in it
TIslandControllers do not run inside an island, as they are external to the island abstraction. -- -- Matthew Fulmer -- http://mtfulmer.wordpress.com/
Well, that is exactly what I want to do. I want to use islands
to handle parallel computation, like a higher-level MPI.
Computation is timeless. I am working on how to demo this by
writing a parallel raytracer using islands as the units of
parallism.
It would also be useful to have a controller that released
messages under user controll, so that islands could be stepped,
one message at a time, like the Tweak debugger can do, except
with an entire island.
I guess it's just a simple matter of programming.
> A more realistic thing to try is to run the
> messages based on the local wall clock which TLocalController does.
>
> And just in case you are wondering why this is being factored into the
> various controllers instead of subclassing TIsland - that's because you
> can't snapshot an image segment for replication with all that crap in it
RSS Feed