JIT 帮助¶
注意
这来自 pypy --jit help
高级 JIT 选项¶
<pypy> --jit
[选项] 其中 选项 是一个逗号分隔的 OPTION=VALUE
列表
- decay=N
- 定期衰减计数器的数量 (0=无,1000=最大) (默认 40)。此值用于根据公式
val *= 1.0 - (decay / 1000)
在每 32 次次要收集后减少 JIT 计数器。这避免了即使在长时间运行的程序中也对罕见路径进行 JIT 编译。- disable_unrolling=N
- 在多少次操作后我们应该停止展开 (默认 200)
- enable_opts=N
- 仅供内部使用 (可能无法正常工作或导致崩溃):要启用的优化,或全部 = intbounds:rewrite:virtualize:string:pure:earlyforce:heap:unroll (默认全部)
- function_threshold=N
- 函数必须运行多少次才能从开始跟踪 (默认 1619)
- inlining=N
- 是否内联 Python 函数 (1/0) (默认 1)
- loop_longevity=N
- 一个参数,控制循环在被释放之前将保留多长时间,一个估计值 (默认 1000)
- max_retrace_guards=N
- 重新跟踪可以导致的额外保护数量 (默认 15)
- max_unroll_loops=N
- 循环可以导致的额外展开次数 (默认 0)
- max_unroll_recursion=N
- 递归函数展开的深度 (默认 7)
- retrace_limit=N
- 在放弃之前我们可以尝试重新跟踪的次数 (默认 0)
- threshold=N
- 循环必须运行多少次才能变热 (默认 1039)
- trace_eagerness=N
- 保护必须失败多少次才能开始编译桥接 (默认 200)
- trace_limit=N
- 在使用 ABORT_TOO_LONG 终止跟踪之前记录的操作数量 (默认 6000)
- vec=N
- 打开向量化优化 (vecopt)。支持 x86 (SSE 4.1)、powerpc (SVX)、s390x SIMD (默认 0)
- vec_all=N
- 尝试向量化发生在 numpypy 库之外的跟踪循环 (默认 0)
- vec_cost=N
- 要放弃哪些跟踪的阈值。解包会增加计数器,向量操作会降低成本 (默认 0)
- off
- 关闭 JIT
- help
- 打印此页面
The pypyjit 模块可用于从 pypy 内部控制 JIT