chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Posix threading


From: felix winkelmann
Subject: Re: [Chicken-users] Posix threading
Date: Fri, 11 Mar 2005 12:19:14 +0100

On Fri, 11 Mar 2005 10:30:10 +0000, Julian Morrison
<address@hidden> wrote:
> 
> The major problem is that GC moves stuff. Perhaps, allow a non-moving GC
> in "thread mode"? (On the heap that is; the stack stuff has to be moved,
> obviously.)
> 
> I'm curious, why in particular did you chose a copying GC?
> 

It's simple and fast. A mark-and-sweep algorithm would be
slower, especially with large data sets, unless heavily tuned.

> >One way would be (and this isn't very much thought out, yet) to
> >allow "worker" threads, each in a separate kernel thread.
> >
> Not sure what that means. Why are worker threads less problematic?

Well, I assumed they could run in a special, perhaps in some form
restricted mode. But I don't know really in what way specifically...

> 
> >The distinction
> >between stack and heap data would have to be generalized to allow
> >multiple stacks. An interesting problem...
> >
> Access cross-stack via (hidden, transparent) locatives?
> 

The runtime system distinguishes frequently between stack/heap
data (for example when checking the write-barrier). Currently the 
"in-stack" check is simple, but would have to be generalized to check
a list of stacks (one for each thread). 
But a GC still would have to stop all threads. I don't know whether
it is worthwhile to shoehorn CotMTA into OS-level threading 
awareness...


cheers,
felix




reply via email to

[Prev in Thread] Current Thread [Next in Thread]