Class MemoryAccessAnalysisResult
- Namespace
- DotCompute.Core.Telemetry.Analysis
- Assembly
- DotCompute.Core.dll
Contains comprehensive analysis results for memory access patterns and performance. Provides insights into memory subsystem utilization and optimization opportunities.
public sealed class MemoryAccessAnalysisResult
- Inheritance
-
MemoryAccessAnalysisResult
- Inherited Members
Properties
AccessPatternDistribution
Gets or sets the distribution of memory access patterns observed. Maps access pattern names to the number of operations using each pattern.
public Dictionary<string, int> AccessPatternDistribution { get; init; }
Property Value
- Dictionary<string, int>
A dictionary mapping access patterns to operation counts.
AverageBandwidth
Gets or sets the average memory bandwidth across all operations. Provides a baseline measure of memory subsystem performance.
public double AverageBandwidth { get; set; }
Property Value
- double
The average bandwidth in GB/s.
AverageCacheHitRate
Gets or sets the average cache hit rate across all memory operations. Measures the effectiveness of caching mechanisms.
public double AverageCacheHitRate { get; set; }
Property Value
- double
The average cache hit rate as a decimal (0.0 to 1.0).
AverageCoalescingEfficiency
Gets or sets the average memory coalescing efficiency. Measures how well memory accesses were optimized across all operations.
public double AverageCoalescingEfficiency { get; set; }
Property Value
- double
The average coalescing efficiency as a decimal (0.0 to 1.0).
DeviceBandwidthUtilization
Gets or sets the bandwidth utilization per device. Maps device IDs to their memory bandwidth utilization percentages.
public Dictionary<string, double> DeviceBandwidthUtilization { get; init; }
Property Value
- Dictionary<string, double>
A dictionary mapping device IDs to bandwidth utilization.
MemorySegmentUsage
Gets or sets the memory segment usage statistics. Maps memory segment names to their detailed usage statistics.
public Dictionary<string, MemorySegmentStats> MemorySegmentUsage { get; init; }
Property Value
- Dictionary<string, MemorySegmentStats>
A dictionary mapping segment names to usage statistics.
Message
Gets or sets an optional message describing the analysis status. Typically used to provide error details when status is not successful.
public string? Message { get; set; }
Property Value
- string
The status message as a string or null if not provided.
OptimizationRecommendations
Gets or sets the list of optimization recommendations for memory access. Provides actionable suggestions for improving memory subsystem performance.
public IList<string> OptimizationRecommendations { get; }
Property Value
PeakBandwidth
Gets or sets the peak memory bandwidth observed. Indicates the maximum memory performance achieved.
public double PeakBandwidth { get; set; }
Property Value
- double
The peak bandwidth in GB/s.
Status
Gets or sets the status of the memory access analysis operation. Indicates whether the analysis completed successfully or encountered issues.
public AnalysisStatus Status { get; set; }
Property Value
- AnalysisStatus
The analysis status from the AnalysisStatus enumeration.
TimeWindow
Gets or sets the time window covered by this analysis. Indicates the duration of data that was analyzed.
public TimeSpan TimeWindow { get; set; }
Property Value
- TimeSpan
The time window as a TimeSpan.
TotalBytesTransferred
Gets or sets the total amount of data transferred across all operations. Indicates the scale of memory activity analyzed.
public long TotalBytesTransferred { get; set; }
Property Value
- long
The total bytes transferred as a long integer.
TotalOperations
Gets or sets the total number of memory operations analyzed. Provides context for the statistical significance of the results.
public int TotalOperations { get; set; }
Property Value
- int
The total operation count as an integer.
TransferDirectionDistribution
Gets or sets the distribution of transfer directions observed. Maps transfer direction names to the number of operations in each direction.
public Dictionary<string, int> TransferDirectionDistribution { get; init; }
Property Value
- Dictionary<string, int>
A dictionary mapping transfer directions to operation counts.