Raxol.Core.Performance.Analyzer (Raxol v0.3.0)
View SourceAnalyzes performance metrics and generates insights for AI analysis.
This module:
- Processes performance metrics
- Identifies performance patterns
- Generates optimization suggestions
- Formats data for AI analysis
Usage
# Get metrics from monitor
metrics = Monitor.get_metrics(monitor)
# Analyze metrics
analysis = Analyzer.analyze(metrics)
# Get AI-ready data
ai_data = Analyzer.prepare_ai_data(analysis)
Summary
Functions
Analyzes performance metrics and generates insights.
Prepares performance data for AI analysis.
Functions
Analyzes performance metrics and generates insights.
Parameters
metrics
- Map of performance metrics from Monitor
Returns
Map containing analysis results:
:performance_score
- Overall performance score (0-100):issues
- List of identified performance issues:suggestions
- List of optimization suggestions:patterns
- Identified performance patterns:trends
- Performance trends over time
Examples
iex> metrics = %{
fps: 60,
avg_frame_time: 16.5,
jank_count: 2,
memory_usage: 1234567,
gc_stats: %{...}
}
iex> Analyzer.analyze(metrics)
%{
performance_score: 85,
issues: ["High memory usage", "Occasional jank"],
suggestions: ["Optimize memory allocation", "Profile render loop"],
patterns: %{...},
trends: %{...}
}
Prepares performance data for AI analysis.
Parameters
analysis
- Analysis results from analyze/1
Returns
Map containing AI-ready data:
:metrics
- Raw performance metrics:analysis
- Analysis results:context
- Additional context for AI:format
- Data format specification
Examples
iex> metrics = %{fps: 60, ...}
iex> analysis = Analyzer.analyze(metrics)
iex> ai_data = Analyzer.prepare_ai_data(analysis)
iex> Map.has_key?(ai_data, :metrics)
true