Back to Eqiora docs Skip to main content

MpiRankLocalCsrAction

Trait MpiRankLocalCsrAction 

pub trait MpiRankLocalCsrAction {
    // Required method
    fn apply_owned_rows(
        &mut self,
        shard: LocalCsrShard<'_>,
        owned_input: &[f64],
        ghosts: &[f64],
        owned_output: &mut [f64],
    ) -> Result<(), Diagnostic>;
}
Description

Narrow rank-local sparse-action seam for composed execution adapters.

Implementations must perform no MPI communication. The shard and vectors are the exact objects sealed by distributed admission: owned_input and ghosts follow the shard layout’s ascending orders, and owned_output contains one result for each owned row. MPI synchronizes the returned status before any subsequent collective phase.

Required Methods§

fn apply_owned_rows( &mut self, shard: LocalCsrShard<'_>, owned_input: &[f64], ghosts: &[f64], owned_output: &mut [f64], ) -> Result<(), Diagnostic>

Apply the admitted owned-row CSR shard.

§Errors

Returns a diagnostic when the local backend cannot produce the exact finite owned-row action. MPI converts it into a common-rank failure at the existing local-action boundary.

Implementors§