记录环境变量

PyPy 和所有其他 RPython 程序都支持一些特殊的环境变量,用于调整各种高级参数。

垃圾回收器

目前,默认的 GC 是(增量版本的)MiniMark。它有许多可以调整的环境变量。对于大多数用法,它们的默认值应该没问题。

PYPYLOG

PYPYLOG环境变量启用调试输出。例如

PYPYLOG=jit:log

表示启用 JIT 的所有调试输出,并写入名为log的文件。更准确地说,条件jit表示启用名称以jit开头的所有部分的输出;这里其他有趣的名称包括gc以获取 GC 的输出,或jit-backend以仅获取 JIT 的机器代码后端的输出。可以使用多个前缀,例如在以下示例中

PYPYLOG=jit-log-opt,jit-backend:log

它输出包含优化循环的部分以及 JIT 后端产生的任何内容。以上示例是您用于jitviewer的内容。

文件名可以指定为-以将日志转储到标准错误。

作为特殊情况,值PYPYLOG=+filename表示仅写入部分标记(对于任何部分)。这主要仅对rpython/tool/logparser.py有用。

日志文件名称中的特殊字符串%d将替换为进程 ID。这使得可以使多个进程不干扰彼此的日志文件。

PYPYSTM

仅在pypy-stm中可用。命名一个日志文件,PyPy-STM 将向其中输出争用信息。可以使用pypy/stm/print_stm_log.py读取。