Documentation

Technical documentation for installing, configuring, and running the Pyvorin compiler.

Filtered by category: Performance. Clear filter
Performance

Performance Guide

Pyvorin performance depends on how much of your program compiles to native code, the build mode, and the workload. General guidanceMeasure before optimizing. Use pyvorin compile app.py --report to find native coverage.Focus refactoring on hot loops and functions with high call counts.Use performance mode only after balanced mode produces correct results. Parallel compilationpyvorin compile app.py --threads=8Increase threads for large projects. The default is usually adequate for small scripts. Realistic expectationsPyvorin is most effective for CPU-bound Python code. I/O-bound programs may see smaller gains because network or disk latency dominates runtime.

Updated 1 month ago

Performance

Parallel Compilation

Pyvorin can compile independent modules in parallel to reduce build time. pyvorin compile app.py --threads=8 The optimal thread count depends on your CPU and project size. For small projects, more threads may not help. For large projects, values up to the number of physical cores are a reasonable starting point. Set a default in pyvorin.toml under build.threads.

Updated 1 month ago

Performance

Measuring Speedup

Measure speedup by comparing the native build against the same code running under CPython. time python app.py time ./build/app Use representative inputs and warm up caches. Reported compile metrics in the Portal show native coverage and estimated speedup over time, but real-world results depend on your workload.

Updated 1 month ago

Performance

CPU-Bound Workloads

CPU-bound programs are the most likely to benefit from native compilation. Examples include numerical loops, data transformation, parsing, and simulation. Native code removes interpreter overhead for supported constructs, which can reduce runtime significantly when the same hot path executes many times. Use performance mode after validating correctness to maximize throughput.

Updated 1 month ago

Performance

I/O-Bound Workloads

I/O-bound programs spend most of their time waiting for network, disk, or external services. Native compilation may reduce startup time and parsing overhead, but it cannot remove network latency or disk waits. Programs dominated by I/O are less likely to show large speedups. Measure end-to-end performance rather than relying on native coverage percentage alone.

Updated 1 month ago