[m-dev.] for review - new stuff for the extras directory.

Thomas Conway conway at cs.mu.OZ.AU
Wed Mar 1 09:33:29 AEDT 2000


On Tue, Feb 29, 2000 at 08:59:56PM EST, Ralph Becket wrote:
> > From: Thomas Conway [mailto:conway at cs.mu.OZ.AU]
> > 
> > The terminology I use to make things clear is:
> > 
> > parallelism	- using multiple CPUs, doing things *at*the*same*time*
> > 
> > concurrency	- giving a model to the programmer that includes the
> > 		  *concept* of multiple things happening at once
> > 
> > So what this library is providing is just concurrency. Parallelism is
> > possible - if you compile in the grade asm_fast.gc.par, then you can
> > start up multiple engines, and get both parallelism and concurrency.
> > 
> > If you read the comment above the declaration for spawn/3, you'll
> > notice that its semantics only mention the interleaving of IO
> > operations. This means that it is unspecified whether in operational
> > terms, execution is parallel or interleaved-sequential.
> 
> In a coroutining model there is only ever one thread active at any
> time and context switches only occur when the running thread yields or
> blocks.  In a pre-emptive model, a context switch can occur at any time.

To date, I have not been distinguishing between concurrent and coroutining
models. That is, I have always assumed that it may be possible for multiple
coroutines to be executing concurrently.

> If it really doesn't matter which model is in use, I'd rather
> s/corouting/thread/ in the yield//0 docs.

Good call. Done.

Thomas
-- 
 Thomas Conway )O+     Every sword has two edges.
     Mercurian            <conway at cs.mu.oz.au>
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list