Configuration Options for PyPy¶
This directory contains documentation for the many configuration options that can be used to affect PyPy’s behaviour. There are two main classes of option, object space options and translation options.
There are two main entry points that accept options: py.py
, which
implements Python on top of another Python interpreter and accepts all
the object space options:
./py.py <objspace options>
and the rpython/bin/rpython
translation entry
point which takes arguments of this form:
./rpython/bin/rpython <translation options> <target>
For the common case of <target>
being targetpypystandalone.py
,
you can then pass the object space options after
targetpypystandalone.py
, i.e. like this:
./rpython/bin/rpython <translation options> targetpypystandalone.py <objspace options>
There is an overview of all command line arguments that can be passed in either position.
Many of the more interesting object space options enable optimizations, which are described in Standard Interpreter Optimizations, or allow the creation of objects that can barely be imagined in CPython, which are documented in What PyPy can do for your objects.
The following diagram gives some hints about which PyPy features work together with which other PyPy features:
Note
Parts of this document are not included in the Debian package. See the missing sections online.