> Koichi: I do think so. This is mistake. I said "I don't think so". 30% is not enough.
More correctly, making a OS thread per a Ruby thread, and creating a Guild makes 1 Ruby thread.
Yes.
absolutely.
So we need to rewrite to support multi-guilds application.
Like sub-process, but share many things like bytecodes (ISeq in MRI context), class and module objects (and method tables) and so on. Also we can share immutable objects (deeply frozen objects) like threads.
Similar to Erlang process, but more heavy weight (because it creates OS thread per Guild).
It's magic of transferring membership. I omitted details on slides.
Could you link to http://www.atdot.net/~ko1/activities/2016_rubykaigi.pdf ? current one is on temporary file space (will be removed soon).
> Koichi: I do think so. This is mistake. I said "I don't think so". 30% is not enough.
More correctly, making a OS thread per a Ruby thread, and creating a Guild makes 1 Ruby thread.
Yes.
absolutely.
So we need to rewrite to support multi-guilds application.
Like sub-process, but share many things like bytecodes (ISeq in MRI context), class and module objects (and method tables) and so on. Also we can share immutable objects (deeply frozen objects) like threads.
Similar to Erlang process, but more heavy weight (because it creates OS thread per Guild).
It's magic of transferring membership. I omitted details on slides.
Could you link to http://www.atdot.net/~ko1/activities/2016_rubykaigi.pdf ? current one is on temporary file space (will be removed soon).