Interface IPerformanceProfiler
- Namespace
- DotCompute.Runtime.Services.Interfaces
- Assembly
- DotCompute.Runtime.dll
Service for profiling performance across the DotCompute runtime. Provides comprehensive performance monitoring and analysis capabilities.
public interface IPerformanceProfiler
Methods
ExportDataAsync(string, PerformanceExportFormat)
Exports performance data to a file. Saves collected performance metrics in the specified format.
Task ExportDataAsync(string filePath, PerformanceExportFormat format)
Parameters
filePathstringThe output file path.
formatPerformanceExportFormatThe export format for the data.
Returns
- Task
A task representing the export operation.
GetMetricsAsync(DateTime, DateTime)
Gets performance metrics for a specific time period. Retrieves aggregated performance data within the specified range.
Task<AggregatedPerformanceMetrics> GetMetricsAsync(DateTime startTime, DateTime endTime)
Parameters
Returns
- Task<AggregatedPerformanceMetrics>
Performance metrics for the specified period.
GetRealTimeDataAsync()
Gets real-time performance data. Provides current performance metrics and system status.
Task<RealTimePerformanceData> GetRealTimeDataAsync()
Returns
- Task<RealTimePerformanceData>
Current real-time performance data.
GetSummaryAsync()
Gets performance summary for all operations. Provides an overview of system performance across all tracked operations.
Task<PerformanceSummary> GetSummaryAsync()
Returns
- Task<PerformanceSummary>
Comprehensive performance summary.
StartProfiling(string, Dictionary<string, object>?)
Starts profiling for a specific operation. Creates a new profiling session to track performance metrics.
IProfilingSession StartProfiling(string operationName, Dictionary<string, object>? metadata = null)
Parameters
operationNamestringThe name of the operation to profile.
metadataDictionary<string, object>Additional metadata about the operation.
Returns
- IProfilingSession
A profiling session token for tracking the operation.