Back to Eqiora docs Skip to main content

MpiAdmittedExecutionAdapter

Trait MpiAdmittedExecutionAdapter 

pub trait MpiAdmittedExecutionAdapter {
    // Required methods
    fn execute_admitted(
        &mut self,
        admitted: AdmittedExecution<'_>,
    ) -> Result<AcceptedLinearExecution, Diagnostic>;
    fn execute_admitted_with_local_action(
        &mut self,
        admitted: AdmittedExecution<'_>,
        action: &mut dyn MpiRankLocalCsrAction,
    ) -> Result<AcceptedLinearExecution, Diagnostic>;
}
Description

L3 adapter seam consuming one exact L2 distributed execution admission.

The process group cannot reselect the portable graph, complete system, owner/halo layout, solver provider, process count, or solver plan. MPI communicator and thread-support observations remain private runtime/Run evidence rather than becoming portable Realization fields.

Required Methods§

fn execute_admitted( &mut self, admitted: AdmittedExecution<'_>, ) -> Result<AcceptedLinearExecution, Diagnostic>

Execute one graph-bound distributed solve and return its common L2 receipt with a transport-normalized actual collective trace.

§Errors

Returns a stable diagnostic for any binding/runtime substitution, collective admission or numerical failure, trace contradiction, or independent complete-host receipt replay failure.

fn execute_admitted_with_local_action( &mut self, admitted: AdmittedExecution<'_>, action: &mut dyn MpiRankLocalCsrAction, ) -> Result<AcceptedLinearExecution, Diagnostic>

Execute one graph-bound distributed solve while delegating only the rank-local owned-row CSR action.

MPI retains ownership of admission, halo exchange, Krylov state, reductions, gather, and host acceptance. The injected action is called only after the local halo is complete; its result is agreed across all ranks at CollectivePhaseV1::LocalAction before execution continues.

§Errors

Returns the same stable diagnostics as Self::execute_admitted, plus any action failure normalized through the collective local-action phase.

Implementors§