[Python-3000] the future of the GIL

Paul Du Bois paul.dubois at gmail.com
Thu May 10 08:23:01 CEST 2007


I'll just chime in tersely since this really seems like -ideas and not
-3000 territory

On 5/9/07, Talin <talin at acm.org> wrote:
> modern consoles such as PS/3 and Xbox do not, since they have no support for
> virtual memory at all.

Well, they have virtual memory as in virtual address spaces, but they
don't swap. Lack of fork() is more of a control thing.

> Also remember that the PS/3 is supposed to be one of the poster children
> for multiprocessing -- the whole 'cell processor' thing. You can't write
> an efficient game on the PS/3 unless it uses multiple processors.

The PS3 is a good argument _against_ having multiple threads in one
interp. With the cell architecture you want to stay very far away from
a shared memory threading model. The 8 "SPUs" in the cell run separate
processes in their own address space (256K, code _and_ data!), so the
cell works best with a "multiple processes with tightly managed
intercommunication channels" program architecture.

> Thought experiment: Suppose you were writing and brand-new dynamic
> language today, designed to work efficiently on multi-processor systems.

Let's see... it would make state sharing difficult and asynchronous
communication easy!

paul


More information about the Python-3000 mailing list