Author: Christian Tismer <tis...@stackless.com> Branch: extradoc Changeset: r4276:91e364476104 Date: 2012-07-04 12:52 +0200 http://bitbucket.org/pypy/extradoc/changeset/91e364476104/
Log: more slides diff --git a/talk/ep2012/stackless/slp-talk.pdf b/talk/ep2012/stackless/slp-talk.pdf index 9fb9ee187cbe163efeff894590fd0fe4d4c040f6..afcb8c00b73bb83d114dc4e0d9c8ec1157800ef3 GIT binary patch [cut] diff --git a/talk/ep2012/stackless/slp-talk.rst b/talk/ep2012/stackless/slp-talk.rst --- a/talk/ep2012/stackless/slp-talk.rst +++ b/talk/ep2012/stackless/slp-talk.rst @@ -239,6 +239,54 @@ * but the main difference is ... +Excurs: Hard-Switching +----------------------- + +Sorry ;-) + +Switching program state "the hard way": + +Without notice of the interpreter + +* the machine stack gets hijacked + + - Brute-Force: replace the stack with another one + + - like threads + +* stackless, greenlets + + - stack slicing + + - semantically same effect + +* switching works fine + +* pickling does not work, opaque data on the stack + + - this is more sophisticated in PyPy, another story... + + +Excurs: Soft-Switching +----------------------- + +Switching program state "the soft way": + +With knowledge of the interpreter + +* most efficient implementation in Stackless 3.1 + +* demands the most effort of the developers + +* no opaque data on the stack, pickling does work + + - again, this is more sophisticated in PyPy + +|pause| + +* now we are at the main difference, as you guessed ... + + Pickling Program State ----------------------- @@ -430,6 +478,7 @@ - without doing any extra-work + Software archeology ------------------- _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit