pub struct LinearSolverSummaryInfo {Show 29 fields
pub solver_name: String,
pub requested: Option<String>,
pub n_factors: u64,
pub n_pattern_reuse: u64,
pub n_pattern_changes: u64,
pub max_fill_ratio: Option<f64>,
pub min_abs_pivot: Option<f64>,
pub max_abs_pivot: Option<f64>,
pub last_inertia: Option<(usize, usize, usize)>,
pub last_inertia_unregularized: Option<(usize, usize, usize)>,
pub last_nnz_a: Option<usize>,
pub last_nnz_l: Option<usize>,
pub total_factor_secs: f64,
pub total_factor_flops: f64,
pub total_delayed_cols: u64,
pub total_two_by_two: u64,
pub total_n_tiny: u64,
pub last_factor_flops: Option<f64>,
pub last_peak_bytes: Option<usize>,
pub last_n_supernodes: Option<usize>,
pub last_max_front_rows: Option<usize>,
pub last_delayed_cols: Option<usize>,
pub last_two_by_two: Option<usize>,
pub last_n_tiny: Option<usize>,
pub last_ordering: Option<String>,
pub last_ordering_preprocess: Option<String>,
pub schur: Option<SchurSummaryInfo>,
pub blocks: Option<BlockSummaryInfo>,
pub restoration: Option<Box<LinearSolverSummaryInfo>>,
}Expand description
Serializable mirror of pounce_linsol::summary::LinearSolverSummary.
Lives in the CLI crate (rather than pounce-linsol) so the linsol
trait crate stays serde-free. Field shape is identical; serde
defaults keep it forward-compatible with future additions.
Fields§
§solver_name: String§requested: Option<String>The linear_solver option as requested (gh#990 item 7); differs from
solver_name when the backend that ran is not the one asked for.
n_factors: u64§n_pattern_reuse: u64§n_pattern_changes: u64§max_fill_ratio: Option<f64>§min_abs_pivot: Option<f64>§max_abs_pivot: Option<f64>§last_inertia: Option<(usize, usize, usize)>(positive, negative, zero) inertia of the final factorisation.
last_inertia_unregularized: Option<(usize, usize, usize)>(positive, negative, zero) inertia of the last factorization tried
with no regularization, i.e. the KKT matrix’s own curvature
verdict (gh#987). last_inertia is the post-shift value.
last_nnz_a: Option<usize>§last_nnz_l: Option<usize>§total_factor_secs: f64§total_factor_flops: f64§total_delayed_cols: u64§total_two_by_two: u64§total_n_tiny: u64§last_factor_flops: Option<f64>§last_peak_bytes: Option<usize>§last_n_supernodes: Option<usize>§last_max_front_rows: Option<usize>§last_delayed_cols: Option<usize>§last_two_by_two: Option<usize>§last_n_tiny: Option<usize>§last_ordering: Option<String>§last_ordering_preprocess: Option<String>§schur: Option<SchurSummaryInfo>Present only when the Schur KKT path actually factored.
blocks: Option<BlockSummaryInfo>Present only when the block-parallel KKT path actually factored.
restoration: Option<Box<LinearSolverSummaryInfo>>The restoration phase’s factorizations, same shape, kept apart from the main-solve fields above. Present only when restoration factored.
Trait Implementations§
Source§impl Clone for LinearSolverSummaryInfo
impl Clone for LinearSolverSummaryInfo
Source§fn clone(&self) -> LinearSolverSummaryInfo
fn clone(&self) -> LinearSolverSummaryInfo
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LinearSolverSummaryInfo
impl Debug for LinearSolverSummaryInfo
Source§impl<'de> Deserialize<'de> for LinearSolverSummaryInfo
impl<'de> Deserialize<'de> for LinearSolverSummaryInfo
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<LinearSolverSummaryInfo, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<LinearSolverSummaryInfo, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl From<LinearSolverSummary> for LinearSolverSummaryInfo
impl From<LinearSolverSummary> for LinearSolverSummaryInfo
Source§fn from(s: LinearSolverSummary) -> LinearSolverSummaryInfo
fn from(s: LinearSolverSummary) -> LinearSolverSummaryInfo
Source§impl Serialize for LinearSolverSummaryInfo
impl Serialize for LinearSolverSummaryInfo
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for LinearSolverSummaryInfo
impl RefUnwindSafe for LinearSolverSummaryInfo
impl Send for LinearSolverSummaryInfo
impl Sync for LinearSolverSummaryInfo
impl Unpin for LinearSolverSummaryInfo
impl UnsafeUnpin for LinearSolverSummaryInfo
impl UnwindSafe for LinearSolverSummaryInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T, U> Imply<T> for U
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more