Skip to content

Optimizer: assignment unit = (AQE, repeat interval, accuracy_sla, latency_sla) #755

Description

@milindsrivastava1997

Problem

extract_aqes deduplicates AQEs across RQEs and collapses their repeat intervals into query_frequency_hz = Σ 1/T_r and t_repeat_gcd_ms. One AQE can then be served by only one config, and the gcd tightens freshness beyond what any single RQE needs (design doc open item 10).

Change

Make the optimizer's assignment unit the tuple (AQE, repeat interval T, accuracy_sla, latency_sla). RQEs that agree on all four merge into one item with frequency = count / T; items that differ stay separate so they can be served by different configs (or share one via the deployment variable).

  • Candidate generation and eligibility use the item's own T instead of t_repeat_gcd_ms.
  • Greedy and the MILP both consume items.

Part of #753.

🤖 Generated with Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions