Pre-configured domain analysis plans.
Domain plans specify how to analyze and view benchmark results across a domain of runs. Each plan is a map with:
:analyse - Vector of analysis specs resolved from criterium.domain :view - Vector of view specs resolved from criterium.view :viewer - Keyword specifying output format (:print, :portal, :none)
Analysis specs are either keywords or vectors of [keyword options-map]. View specs follow the same pattern.
Pre-configured domain analysis plans. Domain plans specify how to analyze and view benchmark results across a domain of runs. Each plan is a map with: :analyse - Vector of analysis specs resolved from criterium.domain :view - Vector of view specs resolved from criterium.view :viewer - Keyword specifying output format (:print, :portal, :none) Analysis specs are either keywords or vectors of [keyword options-map]. View specs follow the same pattern.
Analyze complexity by extracting all quantitative metrics and fitting models.
Fits O(log n), O(n), O(n log n), O(n²) models to determine algorithmic complexity. Requires map coordinates with an :n key for input size.
Includes error bounds (±3σ) for each data point when viewed with kindly. Shows log-log diagnostic chart before model fits for intuitive complexity class estimation (slope ≈ 1 for O(n), slope ≈ 2 for O(n²), etc.).
Example: (analyse-domain complexity-analysis my-domain)
Analyze complexity by extracting all quantitative metrics and fitting models. Fits O(log n), O(n), O(n log n), O(n²) models to determine algorithmic complexity. Requires map coordinates with an :n key for input size. Includes error bounds (±3σ) for each data point when viewed with kindly. Shows log-log diagnostic chart before model fits for intuitive complexity class estimation (slope ≈ 1 for O(n), slope ≈ 2 for O(n²), etc.). Example: (analyse-domain complexity-analysis my-domain)
Extract elapsed time values from all runs using explicit mean path.
This plan explicitly extracts the mean value (not median) for elapsed-time. For median-based extraction with bootstrap fallback, use extract-metrics or complexity-analysis instead.
NOTE: This plan returns nil for :one-shot benchmarks because the explicit :metric-path bypasses the samples fallback. For one-shot data, use extract-metrics instead.
Example: (analyse-domain extract-elapsed-time my-domain)
Extract elapsed time values from all runs using explicit mean path. This plan explicitly extracts the mean value (not median) for elapsed-time. For median-based extraction with bootstrap fallback, use extract-metrics or complexity-analysis instead. NOTE: This plan returns nil for :one-shot benchmarks because the explicit :metric-path bypasses the samples fallback. For one-shot data, use extract-metrics instead. Example: (analyse-domain extract-elapsed-time my-domain)
Extract all quantitative metrics from all runs.
Discovers available metrics automatically (elapsed-time, thread-allocation, etc.) and extracts median values for each (with fallback to mean when bootstrap stats unavailable).
Includes error bounds (±3σ) for each data point when viewed with portal or kindly.
Example: (analyse-domain extract-metrics my-domain)
Extract all quantitative metrics from all runs. Discovers available metrics automatically (elapsed-time, thread-allocation, etc.) and extracts median values for each (with fallback to mean when bootstrap stats unavailable). Includes error bounds (±3σ) for each data point when viewed with portal or kindly. Example: (analyse-domain extract-metrics my-domain)
Compare metric values across different implementations.
Groups runs by :impl axis and compares all quantitative metrics. Requires map coordinates with an :impl key distinguishing implementations.
Extracts median values (with fallback to mean when bootstrap stats unavailable) with error bounds for bar chart visualization. When bootstrap stats are available, also includes quantile statistics (median, p10, p90, CI) enabling box plot visualization.
In the output, the baseline implementation (first in :implementations) shows absolute values with SI units, while other implementations show factors relative to the baseline.
Example: (analyse-domain implementation-comparison my-domain)
Compare metric values across different implementations. Groups runs by :impl axis and compares all quantitative metrics. Requires map coordinates with an :impl key distinguishing implementations. Extracts median values (with fallback to mean when bootstrap stats unavailable) with error bounds for bar chart visualization. When bootstrap stats are available, also includes quantile statistics (median, p10, p90, CI) enabling box plot visualization. In the output, the baseline implementation (first in :implementations) shows absolute values with SI units, while other implementations show factors relative to the baseline. Example: (analyse-domain implementation-comparison my-domain)
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |