[MLton] Multicore CPU's and MLton
Matthew Fluet
fluet@cs.cornell.edu
Sun, 3 Jul 2005 14:52:03 -0400 (EDT)
> > However, maybe a simple hack is to just allocate some fixed number
> > of OS threads that each multiplex MLton's current lightweight
> > threads. I guess there needs to be some global locking and way for
> > the GC to "work".
>
> Yes, the current allocation and GC approach would be very painful
> (performance wise). You really want each thread to have its own local
> heap so that it can allocate quickly there without a lock. This would
> require some restructuring of the GC code (I may be putting it too
> mildly).
And, furthermore, once you've gotten to this point, how does one want the
GC to work -- still stop and copy (meaning that you need to get all
threads to a safe-point), or concurrent (meaning that the GC and the
mutators get much more complicated), or mostly concurrent, etc.