Commit e2ec8bb7 authored by Jason Madden's avatar Jason Madden

Explain the observed slowness of bench_sendall under PyPy and link to the...

Explain the observed slowness of bench_sendall under PyPy and link to the discussion on the PyPy issue tracker. [skip ci]
parent 955bae4a
......@@ -24,7 +24,8 @@ gevent_ is written and maintained by `Denis Bilenko`_ and is licensed under MIT
get gevent
==========
Install Python 2.6, 2.7, 3.3 or 3.4 and greenlet_ extension.
Install Python 2.6, 2.7, 3.3 or 3.4 along with the greenlet_
extension. Or install PyPy 2.6 or above (but not PyPy3).
Download the latest release from `Python Package Index`_ or clone `the repository`_.
......
......@@ -17,6 +17,28 @@ Support for Python 2.5 was removed when support for Python 3 was
added. Any further releases in the 1.0.x line will maintain support
for Python 2.5.
PyPy Notes
----------
PyPy has been tested on OS X and 64-bit Linux from version 2.5.0
through 2.5.1, 2.6.0 and pre-release versions of 2.7.0.
- Version 2.7.0 is required for the most robust signal handling. Prior
to 2.7.0, signals could be delivered incorrectly or fail to be
delivered during a blocking operation.
- Overall performance seems to be quite acceptable with newer versions
of PyPy. Things that are known or expected to be slower under PyPy
include the :mod:`c-ares resolver <gevent.resolver_ares>` and
:meth:`socket.socket.sendall`. In particular,
:meth:`socket.socket.sendall` can be `relatively slow`_ for large
transmissions. This can be mitigated by setting a larger write
buffer on the socket, e.g, ``sock.setsockopt(socket.SOL_SOCKET,
socket.SO_SNDBUF, 1024*1024)`` Whether or not these matter will
depend on the workload of each application.
.. _relatively slow: https://bitbucket.org/pypy/pypy/issues/2091/non-blocking-socketsend-slow-gevent
Improved subprocess support
===========================
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment