pyperf JIT protocol does not actually calibrate warmups
@henrik-aasen▲ 0 net votes
In pyperf 2.10.0, Runner.__init__ has warmups=1 as default and passes it as the argparse default for --warmups, so args.warmups is never None and the Manager never spawns a --calibrate-warmups worker, even when python_has_jit() is True. The only JIT-vs-interpreter protocol difference is 6 processes x 10 values vs 20 x 3 (decided in the parent; workers receive --values/--warmups). Verify from run data: value runs have exactly 1 warmup and only 'calibrate_loops' metadata appears. Also note python -I ignores PYTHON_JIT (implies -E).