[Sugar-devel] Hypothetical sugar-0.90 material, draft 1.

Bernie Innocenti bernie at codewiz.org
Sat Jun 12 10:28:24 EDT 2010


El Sat, 12-06-2010 a las 01:15 -0400, Chris Ball escribió:
> Hi,
> 
>    > Why it is just a pipe dream?  1. Python does not have anything
>    > like the DALVIK virtual machine so every Python process consumes
>    > a lot of memory. Because of this, implementing the above
>    > infrastructure would consume all available RAM and so would not
>    > work.
> 
> Linux memory management shares identical pages between processes.

This has been discussed at length on the FUDbus to Toronto with some
hard-core Fedora folks.

The general opinion is that it won't work in the case of Python, because
pages will containing Python objects will:

 - often contain pointers with slightly different values across
   processes

 - As the program accesses the shared objects, even for read-only
   operations, the intepreter will often increment and decrement
   reference counts to objects, breaking the sharing

This are the very same reasons why the parent process approach was not
buying us much.

David Malcolm, the the maintainer of Python in Fedora, proposed a
strategy which would, sadly, require changes to the on-disk pyc format:

  http://dmalcolm.livejournal.com/4183.html

-- 
   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs       - http://sugarlabs.org/



More information about the Sugar-devel mailing list