[CCC DEV] Ideas on work stealing multicore scheduler for tvm
Zachary Williams
z.zachwilliams at gmail.com
Thu Aug 18 19:59:08 BST 2011
Greetings everyone,
As you may have heard I will be implementing Carl's wait-free work stealing
scheduler in the transterpreter virtual machine. I just wanted to email the
list with my plan of attack to see if anyone has any comments thoughts or
ideas before I really get going in one direction.
Because the TVM is compiled in c and is currently only a single thread, I
thought that the easiest way to initially give it access to more then one
core (on the linux x86 machine I am using) would be to just run a TVM
context for each core using pthreads. This would give me a starting
environment to work on the scheduler. By assuming each context is mapped to
a core (may not actually the case because the OS would be scheduling the c
threads) I can create and test elements of the scheduler.
The next step would be to remove the use of pthreads. Currently I (Matt and
I) am leaning toward llvm libraries because it would provide access to low
level primitives for concurrency and such while still maintaining some level
of portability (to machines which have an llvm back end). This is still
very up in the air and if anyone has any ideas please let me know.
Thanks for your time.
Zach
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.concurrency.cc/pipermail/developers/attachments/20110818/370fb16e/attachment.htm>
More information about the developers
mailing list