<br><br><div class="gmail_quote">On Thu, Feb 19, 2009 at 7:16 PM, Paul Rubin <span dir="ltr"><http></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">Terry Reedy <<a href="mailto:tjreedy@udel.edu">tjreedy@udel.edu</a>> writes:<br>
> > The slowness itself can be addressed by technical means, such as<br>
> > native-code compilation and eliminating the GIL.<br>
><br>
> Given that the GIL remains to make Python run faster in the usual (up<br>
> to now, at least) case of 1 processor, that seems a strange statement.<br>
<br>
</div>We've had this discussion before.  The 1-processor slowdown that you<br>
refer to comes from replacing the GIL with the blunt instrument of a<br>
lock around each reference count operation.  That has the advantage of<br>
not breaking CPython in a million places, but has the drawback of<br>
taking a big performance hit.  The long term fix is to replace<br>
reference counts with a tracing GC.  That is apparently not feasible<br>
in the framework of CPython and the many extension modules that have<br>
been written for it, so it would have to be accompanied by an<br>
implementation switch (e.g. PyPy).<br>
<br>
Steve Holden has mentioned Jython and Ironpython a few times in this<br>
thread.  Those are reasonable proofs of the concept of a GIL-less<br>
Python, but for various reasons (spelled J-V-M and W-i-n-d-o-w-s) are<br>
not all that suitable for many current Python users.</blockquote><div><br>Actually, Mono supports IronPython so it will work on M-a-c, L-i-n-u-x, S-o-l-a-r-i-s, and possibly even W-i-i and P-l-a-y-s-t-a-t-i-o-n-3.<br><br>
<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
<div><div></div><div class="Wj3C7c">--<br>
<a href="http://mail.python.org/mailman/listinfo/python-list" target="_blank">http://mail.python.org/mailman/listinfo/python-list</a><br>
</div></div></blockquote></div><br>