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.3.tar.gz (46.6 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.3-py3-none-any.whl (48.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ember_qc_analysis-0.10.3.tar.gz
  • Upload date:
  • Size: 46.6 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.3.tar.gz
Algorithm Hash digest
SHA256 a73b351523785434bb47b7798bc88f09fb94b3089f6e9f15d6dc149839a1e19b
MD5 3eb67570638046a0fb1755865b0426ca
BLAKE2b-256 a60b5d74fd278f7ef2f8f2e2e0242dbdc9217bc1eeae75a47e71a56e9627dcaf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ember_qc_analysis-0.10.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8c00a25b4920992d711cc64707e90b42ab577fd0ab0634d6b3c9a0a425b095ce
MD5 b563a652719c11548e1f46231877cff6
BLAKE2b-256 dc5d75616e99c9af97dad724a24e843447c2ea734980a31941275b1ab3dd2ecd

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