pub mod alternative_set;
pub mod candidate;
pub mod chain;
pub mod chained_selector;
pub mod cost;
pub mod cost_vector;
pub mod device_load;
pub mod enumerate;
pub mod filter;
pub mod filters;
pub mod judge;
pub mod judge_aware_selector;
pub mod placement_dp;
pub mod profile_oracle;
pub mod route_picker;
pub mod runtime_selector;
pub mod vram_pressure_selector;
pub use alternative_set::{AlternativeSet, DecisionContext, KEEP_PER_DEVICE};
pub use candidate::{Candidate, CouplingAdjustment};
pub use chain::apply_filter_chain;
pub use chained_selector::ChainedSelector;
pub use cost::{
CapabilitiesLookup, TransferEstimator, apply_inbound_transfer_costs, composite_ns,
compute_static_costs, default_backend_rates,
};
pub use cost_vector::{AccuracyClass, CostVector, MemoryTiers, PrecisionDigits};
pub use device_load::{
DeviceLoadSelector, LOAD_TIER_IDLE, LOAD_TIER_MODERATE, LOAD_TIER_SATURATED, LoadLookup,
MockBackendStreams, MockCombinedRuntime, load_tier, load_tier_for, mock_combined_lookup,
mock_load_lookup,
};
pub use enumerate::enumerate_candidates;
pub use filter::{AlternativeFilter, FilterClass, FilterContext};
pub use filters::{
BitStablePreferenceFilter, PrecisionFloorFilter, PrecisionRequirement,
StridedInputPreferenceFilter, default_chain,
};
pub use judge::{HashMapJudge, JudgeOracle};
pub use judge_aware_selector::JudgeAwareSelector;
pub use placement_dp::{ChainInput, PlacementDp};
pub use route_picker::{LOOKAHEAD_K, RouteCache, TelemetryFingerprint, pick_route, resolve_branch};
pub use runtime_selector::{RuntimeSelector, WinnerSelector};
pub use vram_pressure_selector::{
BackendRuntimeHandle, BackendRuntimeLookup, OutputBytesEstimator, VramPressureSelector,
default_estimate_output_bytes,
};