saealib.execution.AsyncEvaluationScheduler#
- class saealib.execution.AsyncEvaluationScheduler(evaluator, *, max_pending=1, max_reserved_fe=None, max_reserved_cost=None, timeout=None, retry_limit=0, feedback_builder=None, algorithm=None, callback_manager=None)[source]#
Bases:
objectCoordinate asynchronous requests and serialized state mutation.
- Parameters:
evaluator (Evaluator)
max_pending (int)
max_reserved_fe (int | None)
max_reserved_cost (float | None)
timeout (float | None)
retry_limit (int)
feedback_builder (FeedbackBuilder | None)
algorithm (Any)
callback_manager (Any)
Methods
Cancel a pending request and commit its terminal update. |
|
Save pending state only when the evaluator can reattach it. |
|
Return the scheduler contract and its evaluator part. |
|
Enable delivery through a compiler-inserted accumulator. |
|
Return candidate IDs reserved by pending requests. |
|
Collect completed work and commit updates serially. |
|
Collect completed work and report whether this call made progress. |
|
Rebuild runtime handles for checkpointed requests. |
|
Return reserved estimated cost. |
|
Return reserved candidate count. |
|
Submit disjoint requests within capacity and budget limits. |
Method Details
- AsyncEvaluationScheduler.__init__(evaluator, *, max_pending=1, max_reserved_fe=None, max_reserved_cost=None, timeout=None, retry_limit=0, feedback_builder=None, algorithm=None, callback_manager=None)[source]#
- Parameters:
evaluator (Evaluator)
max_pending (int)
max_reserved_fe (int | None)
max_reserved_cost (float | None)
timeout (float | None)
retry_limit (int)
feedback_builder (FeedbackBuilder | None)
algorithm (Any)
callback_manager (Any)
- Return type:
None
- AsyncEvaluationScheduler.cancel(state, request_id)[source]#
Cancel a pending request and commit its terminal update.
- Parameters:
state (OptimizationState)
request_id (int)
- Return type:
OptimizationState
- AsyncEvaluationScheduler.checkpoint(state, path)[source]#
Save pending state only when the evaluator can reattach it.
- Parameters:
state (OptimizationState)
path (str)
- Return type:
None
- AsyncEvaluationScheduler.contract()[source]#
Return the scheduler contract and its evaluator part.
- Return type:
- AsyncEvaluationScheduler.enable_feedback_accumulator()[source]#
Enable delivery through a compiler-inserted accumulator.
- Return type:
None
- AsyncEvaluationScheduler.pending_candidate_ids(state)[source]#
Return candidate IDs reserved by pending requests.
- Parameters:
state (OptimizationState)
- Return type:
np.ndarray
- AsyncEvaluationScheduler.poll(state, *, wait=False)[source]#
Collect completed work and commit updates serially.
- Parameters:
state (OptimizationState)
wait (bool)
- Return type:
OptimizationState
- AsyncEvaluationScheduler.poll_result(state, *, wait=False)[source]#
Collect completed work and report whether this call made progress.
- Parameters:
state (OptimizationState)
wait (bool)
- Return type:
- AsyncEvaluationScheduler.reattach(state)[source]#
Rebuild runtime handles for checkpointed requests.
- Parameters:
state (OptimizationState)
- Return type:
OptimizationState
- AsyncEvaluationScheduler.reserved_cost(state)[source]#
Return reserved estimated cost.
- Parameters:
state (OptimizationState)
- Return type:
float
- AsyncEvaluationScheduler.reserved_fe(state)[source]#
Return reserved candidate count.
- Parameters:
state (OptimizationState)
- Return type:
int
- AsyncEvaluationScheduler.submit(state, requests)[source]#
Submit disjoint requests within capacity and budget limits.
- Parameters:
state (OptimizationState)
requests (Iterable[EvaluationRequest])
- Return type:
OptimizationState