<br>Sweet.  ^_^  I see the permissions bits look better now too.<br><br>I miss os.stat().st_rdev though - was it removed for a reason?<br><br><div class="gmail_quote">On Thu, Aug 18, 2011 at 10:30 AM, Maciej Fijalkowski <span dir="ltr">&lt;<a href="mailto:fijall@gmail.com">fijall@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">========================<br>
PyPy 1.6 - kickass panda<br>
========================<br>
<br>
We&#39;re pleased to announce the 1.6 release of PyPy. This release brings a lot<br>
of bugfixes and performance improvements over 1.5, and improves support for<br>
Windows 32bit and OS X 64bit. This version fully implements Python 2.7.1 and<br>
has beta level support for loading CPython C extensions.  You can download it<br>
here:<br>
<br>
    <a href="http://pypy.org/download.html" target="_blank">http://pypy.org/download.html</a><br>
<br>
What is PyPy?<br>
=============<br>
<br>
PyPy is a very compliant Python interpreter, almost a drop-in replacement for<br>
CPython 2.7.1. It&#39;s fast (`pypy 1.5 and cpython 2.6.2`_ performance comparison)<br>
due to its integrated tracing JIT compiler.<br>
<br>
This release supports x86 machines running Linux 32/64 or Mac OS X.  Windows 32<br>
is beta (it roughly works but a lot of small issues have not been fixed so<br>
far).  Windows 64 is not yet supported.<br>
<br>
The main topics of this release are speed and stability: on average on<br>
our benchmark suite, PyPy 1.6 is between **20% and 30%** faster than PyPy 1.5,<br>
which was already much faster than CPython on our set of benchmarks.<br>
<br>
The speed improvements have been made possible by optimizing many of the<br>
layers which compose PyPy.  In particular, we improved: the Garbage Collector,<br>
the JIT warmup time, the optimizations performed by the JIT, the quality of<br>
the generated machine code and the implementation of our Python interpreter.<br>
<br>
.. _`pypy 1.5 and cpython 2.6.2`: <a href="http://speed.pypy.org" target="_blank">http://speed.pypy.org</a><br>
<br>
<br>
Highlights<br>
==========<br>
<br>
* Numerous performance improvements, overall giving considerable speedups:<br>
<br>
  - better GC behavior when dealing with very large objects and arrays<br>
<br>
  - **fast ctypes:** now calls to ctypes functions are seen and optimized<br>
    by the JIT, and they are up to 60 times faster than PyPy 1.5 and 10 times<br>
    faster than CPython<br>
<br>
  - improved generators(1): simple generators now are inlined into the caller<br>
    loop, making performance up to 3.5 times faster than PyPy 1.5.<br>
<br>
  - improved generators(2): thanks to other optimizations, even generators<br>
    that are not inlined are between 10% and 20% faster than PyPy 1.5.<br>
<br>
  - faster warmup time for the JIT<br>
<br>
  - JIT support for single floats (e.g., for ``array(&#39;f&#39;)``)<br>
<br>
  - optimized dictionaries: the internal representation of dictionaries is now<br>
    dynamically selected depending on the type of stored objects, resulting in<br>
    faster code and smaller memory footprint.  For example, dictionaries whose<br>
    keys are all strings, or all integers. Other dictionaries are also smaller<br>
    due to bugfixes.<br>
<br>
* JitViewer: this is the first official release which includes the JitViewer,<br>
  a web-based tool which helps you to see which parts of your Python code have<br>
  been compiled by the JIT, down until the assembler. The `jitviewer`_ 0.1 has<br>
  already been release and works well with PyPy 1.6.<br>
<br>
* The CPython extension module API has been improved and now supports many<br>
  more extensions. For information on which one are supported, please refer to<br>
  our `compatibility wiki`_.<br>
<br>
* Multibyte encoding support: this was of of the last areas in which we were<br>
  still behind CPython, but now we fully support them.<br>
<br>
* Preliminary support for NumPy: this release includes a preview of a very<br>
  fast NumPy module integrated with the PyPy JIT.  Unfortunately, this does<br>
  not mean that you can expect to take an existing NumPy program and run it on<br>
  PyPy, because the module is still unfinished and supports only some of the<br>
  numpy API. However, barring some details, what works should be<br>
  blazingly fast :-)<br>
<br>
* Bugfixes: since the 1.5 release we fixed 53 bugs in our `bug tracker`_, not<br>
  counting the numerous bugs that were found and reported through other<br>
  channels than the bug tracker.<br>
<br>
Cheers,<br>
<br>
Hakan Ardo, Carl Friedrich Bolz, Laura Creighton, Antonio Cuni,<br>
Maciej Fijalkowski, Amaury Forgeot d&#39;Arc, Alex Gaynor,<br>
Armin Rigo and the PyPy team<br>
<br>
.. _`jitviewer`:<br>
<a href="http://morepypy.blogspot.com/2011/08/visualization-of-jitted-code.html" target="_blank">http://morepypy.blogspot.com/2011/08/visualization-of-jitted-code.html</a><br>
.. _`bug tracker`: <a href="https://bugs.pypy.org" target="_blank">https://bugs.pypy.org</a><br>
.. _`compatibility wiki`: <a href="https://bitbucket.org/pypy/compatibility/wiki/Home" target="_blank">https://bitbucket.org/pypy/compatibility/wiki/Home</a><br>
_______________________________________________<br>
pypy-dev mailing list<br>
<a href="mailto:pypy-dev@python.org">pypy-dev@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/pypy-dev" target="_blank">http://mail.python.org/mailman/listinfo/pypy-dev</a><br>
</blockquote></div><br>