Don Stewart wrote:
marlowsd:
Neal Alexander wrote:
Thomas DuBuisson wrote:
   It seems like we could get some priority based scheduling (and still
   be slackers) if we allow marked green threads to be strictly
   associated with a specific OS thread (forkChildIO?).


I think you want the GHC-only GHC.Conc.forkOnIO

GHC.Conc.forkOnIO is helpful but doest work in this case - it doesn't attach them to the same OS thread.
But it does attach the thread to a particular "virtual CPU" in the GHC RTS (we call them "capabilities"), with the intention that a virtual CPU corresponds more or less to a real CPU core.

Every time Simon responds on questions of parallelism and the GHC
runtime, I learn something. That indicates to me that we've got a 'bus
error' situation with how to effectively use the smp runtime.
Simon: time for a multicore FAQ wiki page to gather this knowledge, like
we did for the performance tips? Somewhere to paste these insights?

Sure, that would be great. One slight problem is that I'm still learning myself how to use parallelism effectively, and the RTS is still changing rapidly. We have a paper in the works that should serve as a good overview of the implementation, but a wiki page would be more suitable for users. If nobody else starts one, I'll try to get to it in the next few weeks.

Cheers,
        Simon
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to