pub struct PerformanceProfiler { /* private fields */ }Expand description
Performance profiler
Implementations§
Source§impl PerformanceProfiler
impl PerformanceProfiler
Sourcepub fn start_real_time_monitoring(&mut self) -> Result<RealTimeMonitor, String>
pub fn start_real_time_monitoring(&mut self) -> Result<RealTimeMonitor, String>
Start real-time monitoring
Sourcepub fn predict_performance(
&self,
problem_characteristics: &ProblemCharacteristics,
) -> PerformancePrediction
pub fn predict_performance( &self, problem_characteristics: &ProblemCharacteristics, ) -> PerformancePrediction
Predict performance characteristics
Sourcepub fn generate_recommendations(
&self,
profile: &Profile,
) -> Vec<OptimizationRecommendation>
pub fn generate_recommendations( &self, profile: &Profile, ) -> Vec<OptimizationRecommendation>
Generate optimization recommendations
Sourcepub fn export_for_external_tool(
&self,
profile: &Profile,
tool: ExternalTool,
) -> Result<String, String>
pub fn export_for_external_tool( &self, profile: &Profile, tool: ExternalTool, ) -> Result<String, String>
Export profile for external analysis tools
Sourcepub fn start_continuous_profiling(
&mut self,
duration: Duration,
) -> Result<ContinuousProfiler, String>
pub fn start_continuous_profiling( &mut self, duration: Duration, ) -> Result<ContinuousProfiler, String>
Continuous profiling mode
Sourcepub fn benchmark_compare(&self, profiles: &[Profile]) -> BenchmarkComparison
pub fn benchmark_compare(&self, profiles: &[Profile]) -> BenchmarkComparison
Benchmark comparison
Sourcepub fn new(config: ProfilerConfig) -> Self
pub fn new(config: ProfilerConfig) -> Self
Create new profiler
Sourcepub fn stop_profile(&mut self) -> Result<Profile, String>
pub fn stop_profile(&mut self) -> Result<Profile, String>
Stop profiling
Sourcepub fn enter_function(&mut self, name: &str) -> FunctionGuard
pub fn enter_function(&mut self, name: &str) -> FunctionGuard
Record function entry
Sourcepub fn start_timer(&mut self, name: &str)
pub fn start_timer(&mut self, name: &str)
Start timer
Sourcepub fn stop_timer(&mut self, name: &str) -> Option<Duration>
pub fn stop_timer(&mut self, name: &str) -> Option<Duration>
Stop timer
Sourcepub fn record_allocation(&mut self, size: usize)
pub fn record_allocation(&mut self, size: usize)
Record memory allocation
Sourcepub fn record_deallocation(&mut self, size: usize)
pub fn record_deallocation(&mut self, size: usize)
Record memory deallocation
Sourcepub fn record_solution_quality(&mut self, quality: f64)
pub fn record_solution_quality(&mut self, quality: f64)
Record solution quality
Sourcepub fn analyze_profile(&self, profile: &Profile) -> AnalysisReport
pub fn analyze_profile(&self, profile: &Profile) -> AnalysisReport
Analyze profile
Sourcepub fn compare_profiles(
&self,
profile1: &Profile,
profile2: &Profile,
) -> ComparisonReport
pub fn compare_profiles( &self, profile1: &Profile, profile2: &Profile, ) -> ComparisonReport
Compare profiles
Sourcepub fn generate_report(
&self,
profile: &Profile,
format: &OutputFormat,
) -> Result<String, String>
pub fn generate_report( &self, profile: &Profile, format: &OutputFormat, ) -> Result<String, String>
Generate report
Auto Trait Implementations§
impl Freeze for PerformanceProfiler
impl !RefUnwindSafe for PerformanceProfiler
impl Send for PerformanceProfiler
impl Sync for PerformanceProfiler
impl Unpin for PerformanceProfiler
impl !UnwindSafe for PerformanceProfiler
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.