Hello guys, i hope you are interested in having a rock-solid & safe concurrency in smalltalk, despite it green-threaded.
A new implementation of scheduler will allow us to improve stuff and be no longer dependant from VM side scheduling policy. You can find the changes on mantis: http://bugs.squeak.org/view.php?id=7345 Please, give me a feedback, if you can successfully build VM with new changes on all platforms. I used a pretty old VMMaker package version for my VM: VMMaker-dtl.91 Will try to see if it can be built with latest one , available on SqS. Andreas (& others) - do you have any tests/benchmarks, how to measure a new scheduler overhead comparing to old one? Personally, i didn't noticed much speed degradation :) And last thing, i need an advice how to implement a #callbackEnter: properly. Its currently leaved unchanged, using old VM scheduling policy. So, its unsafe to use plugins with callbacks if you running under new scheduler. A callbackEnter remembers the active process, suspends it and then activates it back when callback is done. The problem is, that squeak 3.10 doesn't have any image-side code which i could change to play with callbacks :( A fix for callbacks should be pretty easy: - at entry, deactivate active process (which should be NOT the interrupt process) & switch to interrupt process, so it could schedule next available process. - when leaving switch from interrupt process to previously remembered active process. So, a certain preconditions should be met: - a code which calls a primitives which using callbacks should never run in interruptProcess - a code , which returns from a callback should run in interruptProcess -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
