Skip to main content

Post-benchmark analysis, plots, and statistics for ember-qc results

Project description

ember-qc-analysis

Post-benchmark analysis for EMBER. Processes completed ember-qc benchmark batches and produces plots, tables, and statistical tests.

No quantum dependencies — install on any machine.


Installation

pip install ember-qc-analysis

Or together with the benchmark runner:

pip install ember-qc[analysis]

Requires Python 3.10+.


Quick Start

Stage a batch and generate a full report:

ember-analysis stage results/my_benchmark_2026-03-28
ember-analysis report

Or run analysis automatically after a benchmark:

ember run experiment.yaml --analyze

Outputs are written to <batch_dir>/analysis/:

analysis/
├── plots/
│   ├── distributions/    — chain length KDE, violin plots, consistency
│   ├── scaling/          — performance vs. problem size
│   ├── pairwise/         — win-rate heatmap, head-to-head scatter, Pareto
│   ├── success/          — success rate by category, nodes, density
│   ├── graph-indexed/    — metrics indexed by graph properties
│   └── topology/         — performance by hardware topology
├── tables/
│   ├── overall_summary.csv/.tex
│   ├── summary_by_category.csv/.tex
│   └── rank_table.csv/.tex
└── stats/
    ├── win_rate_matrix.csv
    ├── significance_tests.csv
    ├── friedman_test.json
    └── correlation_matrix.csv

CLI Reference

Both ember-analysis and ember-a invoke the same entry point.

ember-analysis stage <batch_dir>            Set the active batch
ember-analysis unstage                      Clear the active batch
ember-analysis report [-o PATH] [-f FMT]    Run the full analysis pipeline
ember-analysis plots [GROUP...] [-f FMT]    Generate specific plot groups
ember-analysis tables [-o PATH]             Generate summary tables
ember-analysis stats [-o PATH]              Run statistical tests
ember-analysis batches list                 List available batches
ember-analysis config show/set/get/reset    Manage configuration
ember-analysis version                      Show package version

Python API

from ember_qc_analysis import BenchmarkAnalysis

an = BenchmarkAnalysis("results/my_batch")

# Tables
summary = an.overall_summary()          # one row per algorithm
by_cat  = an.summary_by_category()      # algorithm × graph category
ranks   = an.rank_table()               # mean rank per algorithm

# Statistics
win_matrix = an.win_rate_matrix()       # N×N pairwise win rates
sig_tests  = an.significance_tests()    # Wilcoxon + Holm-Bonferroni
friedman   = an.friedman_test()         # non-parametric multi-algorithm ANOVA
corr       = an.correlation_matrix()    # Spearman: graph properties vs. metrics

# Full report
an.generate_report(
    output_root="~/analysis",
    overwrite=True,
    fig_format="pdf",
)

Configuration

ember-analysis config set input_dir ~/results       # directory containing batch subdirectories
ember-analysis config set output_dir ~/analysis     # override default output location
ember-analysis config set fig_format pdf            # default figure format (png/pdf/svg)
ember-analysis config show                          # all settings

Environment variables: EMBER_ANALYSIS_INPUT_DIR, EMBER_ANALYSIS_OUTPUT_DIR, EMBER_ANALYSIS_FIG_FORMAT.


Documentation


License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ember_qc_analysis-0.10.1.tar.gz (43.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ember_qc_analysis-0.10.1-py3-none-any.whl (45.8 kB view details)

Uploaded Python 3

File details

Details for the file ember_qc_analysis-0.10.1.tar.gz.

File metadata

  • Download URL: ember_qc_analysis-0.10.1.tar.gz
  • Upload date:
  • Size: 43.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for ember_qc_analysis-0.10.1.tar.gz
Algorithm Hash digest
SHA256 35c8c6da1a319c3c1f1a524790cd6c30d2c52dbbe7b4247db38ab075ec941517
MD5 084a6d37f7c61cf1654953a0218127f4
BLAKE2b-256 2b0fe33ccadfd04ce721dcab3d2787b67021a3c99ca296b594cfd66eb1033e7f

See more details on using hashes here.

File details

Details for the file ember_qc_analysis-0.10.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ember_qc_analysis-0.10.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7b23d54755ad88a9169036c6108c34824b2954d41193c3971de417efa89c226b
MD5 c7eb1664f7cbe8986096545d7f13a4df
BLAKE2b-256 601d488d438fb60e9c74fb7f3dc4ac1152076c622ba22b261f9465de3d7b3525

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page