Function: Manages overall decisions about how to apply the abstract interpreter and optimizing compiler; also responsible for constructing the image to offload to the target and making use of multicore systems via an incremental and parallel build engine. Orchestrates multi-tier execution (interpreter, baseline, optimizing JIT) and distributed compilation à la Azul.
Inputs
- Profiler output.
- Unison-based compiler and partial evaluator.
- Precompiled code cache (local/remote).
- Configuration (tiers allowed, image modes, profiling).
Processing
- Tiering Policy (Tiers 0–N) — Coordinates tiers: Tier 0 (interpreter for cold/unprofiled code, JIT disablied), Tier 1 (baseline copy-and-patch JIT), Tier 2+ (optimizing JIT); triggers on-the-fly recompilation based on behavior shifts.
- Hybrid offload:
- Ask remote “cloud compiler” to compile hot units.
- Cache by IR hash + environment, Azul-style.
- Trigger on-the-fly compilation and re-compilation based on behavior shifts.
- Image Construction & Offload — Assembles the final image (code cache + stitching + runtime + profiling instrumentation) and dispatches it to the target via the deploy protocol; manages remote/cloud compiler offload (Azul-style, keyed by IR hash + environment) for hot compilation units.
Outputs
- Active code per function/trace.
- Updated distributed code cache.
- Constructed image ready for deploy.
Function: Manages overall decisions about how to apply the abstract interpreter and optimizing compiler; also responsible for constructing the image to offload to the target and making use of multicore systems via an incremental and parallel build engine. Orchestrates multi-tier execution (interpreter, baseline, optimizing JIT) and distributed compilation à la Azul.
Inputs
Processing
Outputs