Skip to content

v0.5.3

Latest

Choose a tag to compare

@cyclone-github cyclone-github released this 26 Jul 01:49
e18b21e

What's Changed

v0.5.3; 2026-07-25

  • pcfg_guesser ~2× faster than v0.5.2
  • ~2,578% faster than Python3 pcfg_guesser.py
  • Reduce long-run RAM growth in pcfg_guesser (priority-queue frontier)
    • Compact parse-tree representation (interned type IDs, packed nodes, arena reuse)
    • Contiguous index-based heap (fewer per-item allocations)
    • Reuse OMEN optimizer cache per worker
    • Prefer []byte guess building to cut string churn
  • Same generation logic; parallel stdout interleaving may differ across runs
  • Rename trainer to pcfg_trainer

Notes from PR #9:
Issue #8 got me to thinking about optimizing memory usage with pcfg_guesser. While combing through the codebase, I added a few hot path optimizations which increased guesser generation speed while also lowering memory usage, so win-win.

We now have twice the speed with half the memory usage. Nice.

Also renamed trainer to pcfg_trainer to keep the naming scheme similar between guesser and trainer binaries.