pub struct Profiler {
pub metrics: Vec<OperationMetrics>,
/* private fields */
}Expand description
Performance profiler for tracking operation metrics
Fields§
§metrics: Vec<OperationMetrics>Collected metrics
Implementations§
Source§impl Profiler
impl Profiler
Sourcepub fn enable_memory_tracking(&mut self)
pub fn enable_memory_tracking(&mut self)
Enable memory tracking
Sourcepub fn enable_flops_counting(&mut self)
pub fn enable_flops_counting(&mut self)
Enable FLOPS counting
Sourcepub fn start_operation(
&mut self,
name: &str,
inputs: &[&Tensor],
) -> TorshResult<()>
pub fn start_operation( &mut self, name: &str, inputs: &[&Tensor], ) -> TorshResult<()>
Start profiling an operation
Sourcepub fn finish_operation(&mut self, outputs: &[&Tensor]) -> TorshResult<()>
pub fn finish_operation(&mut self, outputs: &[&Tensor]) -> TorshResult<()>
Finish profiling an operation
Sourcepub fn get_metrics(&self, operation_name: &str) -> Vec<&OperationMetrics>
pub fn get_metrics(&self, operation_name: &str) -> Vec<&OperationMetrics>
Get metrics for a specific operation
Sourcepub fn get_summary(&self, operation_name: &str) -> Option<OperationSummary>
pub fn get_summary(&self, operation_name: &str) -> Option<OperationSummary>
Get summary statistics for an operation
Sourcepub fn export_csv(&self) -> String
pub fn export_csv(&self) -> String
Export metrics to CSV format
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Profiler
impl !RefUnwindSafe for Profiler
impl Send for Profiler
impl Sync for Profiler
impl Unpin for Profiler
impl UnsafeUnpin for Profiler
impl !UnwindSafe for Profiler
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 more