Class ProfileAnalysis
- Namespace
- DotCompute.Core.Telemetry.Analysis
- Assembly
- DotCompute.Core.dll
Contains comprehensive analysis results for a performance profile. Provides insights into execution patterns, bottlenecks, and optimization opportunities.
public sealed class ProfileAnalysis
- Inheritance
-
ProfileAnalysis
- Inherited Members
Properties
AnalysisTimestamp
Gets or sets the timestamp when this analysis was performed. Used for tracking when the analysis was generated and its freshness.
public DateTimeOffset AnalysisTimestamp { get; set; }
Property Value
- DateTimeOffset
The analysis timestamp as a DateTimeOffset.
AverageCacheHitRate
Gets or sets the average cache hit rate across all operations. Measures the effectiveness of caching mechanisms during profiling.
public double AverageCacheHitRate { get; set; }
Property Value
- double
The average cache hit rate as a decimal (0.0 to 1.0).
AverageKernelExecutionTime
Gets or sets the average kernel execution time across all kernels. Provides insight into the typical duration of compute operations.
public double AverageKernelExecutionTime { get; set; }
Property Value
- double
The average kernel execution time in milliseconds.
AverageMemoryBandwidth
Gets or sets the average memory bandwidth across all memory operations. Provides insight into memory subsystem performance.
public double AverageMemoryBandwidth { get; set; }
Property Value
- double
The average memory bandwidth in GB/s.
AverageOccupancy
Gets or sets the average occupancy percentage across all kernel executions. Indicates how effectively compute resources were utilized overall.
public double AverageOccupancy { get; set; }
Property Value
- double
The average occupancy as a decimal (0.0 to 1.0).
DeviceUtilizationEfficiency
Gets or sets the device utilization efficiency score. Indicates how effectively the available device resources were used.
public double DeviceUtilizationEfficiency { get; set; }
Property Value
- double
The device utilization efficiency as a decimal (0.0 to 1.0).
IdentifiedBottlenecks
Gets or sets the list of identified performance bottlenecks. Each bottleneck includes location, severity, and impact information.
public IList<string> IdentifiedBottlenecks { get; init; }
Property Value
OptimizationRecommendations
Gets or sets the list of optimization recommendations based on the analysis. Provides actionable suggestions for improving performance.
public IList<string> OptimizationRecommendations { get; }
Property Value
OverallThroughput
Gets or sets the overall throughput in operations per second. Measures the aggregate processing rate across all operations.
public double OverallThroughput { get; set; }
Property Value
- double
The overall throughput in operations per second.
ParallelismEfficiency
Gets or sets the parallelism efficiency score. Indicates how effectively parallel processing capabilities were utilized.
public double ParallelismEfficiency { get; set; }
Property Value
- double
The parallelism efficiency as a decimal (0.0 to 1.0).
TotalExecutionTime
Gets or sets the total execution time for all operations in the profile. Represents the sum of all operation durations, including parallel operations.
public double TotalExecutionTime { get; set; }
Property Value
- double
The total execution time in milliseconds.
TotalMemoryTransferred
Gets or sets the total amount of memory transferred during profiling. Indicates the scale of memory operations captured in the profile.
public long TotalMemoryTransferred { get; set; }
Property Value
- long
The total memory transferred in bytes.