Skip to main content

TimingStatistics

Struct TimingStatistics 

Source
pub struct TimingStatistics {
Show 22 fields pub overall_alg: TimedTask, pub print_problem_statistics: TimedTask, pub initialize_iterates: TimedTask, pub update_hessian: TimedTask, pub output_iteration: TimedTask, pub update_barrier_parameter: TimedTask, pub compute_search_direction: TimedTask, pub compute_acceptable_trial_point: TimedTask, pub accept_trial_point: TimedTask, pub check_convergence: TimedTask, pub linear_system_factorization: TimedTask, pub linear_system_back_solve: TimedTask, pub linear_system_structure_converter: TimedTask, pub linear_system_structure_converter_init: TimedTask, pub quality_function_search: TimedTask, pub total_callback_time: TimedTask, pub total_function_evaluation_time: TimedTask, pub eval_obj: TimedTask, pub eval_grad_obj: TimedTask, pub eval_constr: TimedTask, pub eval_constr_jac: TimedTask, pub eval_lag_hess: TimedTask,
}
Expand description

Aggregate of per-subsystem TimedTask counters. Mirrors Algorithm/IpTimingStatistics.{hpp,cpp}. Owned by IpoptApplication and shared (via Rc) with the algorithm, NLP, and KKT solver so each subsystem can bump its own field. Reported at the end of a solve when print_timing_statistics yes.

Fields§

§overall_alg: TimedTask§print_problem_statistics: TimedTask§initialize_iterates: TimedTask§update_hessian: TimedTask§output_iteration: TimedTask§update_barrier_parameter: TimedTask§compute_search_direction: TimedTask§compute_acceptable_trial_point: TimedTask§accept_trial_point: TimedTask§check_convergence: TimedTask§linear_system_factorization: TimedTask§linear_system_back_solve: TimedTask§linear_system_structure_converter: TimedTask§linear_system_structure_converter_init: TimedTask§quality_function_search: TimedTask§total_callback_time: TimedTask§total_function_evaluation_time: TimedTask§eval_obj: TimedTask§eval_grad_obj: TimedTask§eval_constr: TimedTask§eval_constr_jac: TimedTask§eval_lag_hess: TimedTask

Implementations§

Source§

impl TimingStatistics

Source

pub fn new() -> Self

Source

pub fn report(&self) -> String

Format a per-subsystem timing report (wall-clock seconds, mirroring upstream IpoptApplication’s end-of-run “Timing Statistics” block but with sys/cpu columns omitted — pounce only tracks wall time). Lines are indented to reflect the upstream visual nesting (OverallAlgorithm → its phases; TotalFunctionEvaluations → its per-callback breakdown). Returns a multi-line string ending in a trailing newline so callers can print! it directly.

Source

pub fn reset(&self)

Reset all counters. Mirrors upstream ResetTimes().

Trait Implementations§

Source§

impl Debug for TimingStatistics

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for TimingStatistics

Source§

fn default() -> TimingStatistics

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.