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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ember_qc_analysis-0.10.10.tar.gz
  • Upload date:
  • Size: 50.4 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.10.tar.gz
Algorithm Hash digest
SHA256 8d8f96c9f3c708a22d2d6aeab70b241ac94458c23dd8a433be844cf8cb0c4131
MD5 9ad4530dd620577e793bd314ba35a02b
BLAKE2b-256 6eff91b51a1cdca6d37e2b9ec2cbd4a6f71d7a68c192256e48329c6686ac888a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ember_qc_analysis-0.10.10-py3-none-any.whl
Algorithm Hash digest
SHA256 a2781e830555ecadd608a634609538c3044e21f626f1df2bd4de4383ac09c03e
MD5 bcda4648a021b1eef2ae01fe4a8601ff
BLAKE2b-256 4a516e2b8066514dc686aa2d46def1873f35fe9f85add08379c8bca25a4aa99e

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