Skip to content

feat: add panel and multi-model CodSpeed benchmarks - #24

Merged
AzulGarza merged 2 commits into
mainfrom
feat/panel-codspeed-benchmarks
Sep 11, 2026
Merged

feat: add panel and multi-model CodSpeed benchmarks#24
AzulGarza merged 2 commits into
mainfrom
feat/panel-codspeed-benchmarks

Conversation

@AzulGarza

Copy link
Copy Markdown
Member

Summary

  • Add a large_panel_df fixture (100 series × 500 points) for benchmarks where preprocessing cost is visible
  • Parametrize test_timeseries_dataset_from_df with small and large sizes
  • Add test_foundation_forecast_multi_model (3 and 5 DatasetTouchingModel instances) to measure multi-model dataset construction overhead
  • Extend the CodSpeed core workflow to run the new orchestration benchmarks

These benchmarks establish baselines on main before #18 (shared panel processing) merges. After #18 lands, CodSpeed on that PR should show speedups on test_foundation_forecast_multi_model and test_timeseries_dataset_from_df[large].

Phase 2 (panel micro-benchmarks: process_panel_from_df, from_panel, etc.) will be added in PR #18 once those APIs exist.

Test plan

Made with Cursor

Add large-panel dataset fixture, parametrize TimeSeriesDataset.from_df
benchmarks, and FoundationForecast multi-model orchestration benchmarks
to measure preprocessing speedups from shared panel processing (PR #18).

Co-authored-by: Cursor <cursoragent@cursor.com>
@codspeed-hq

codspeed-hq Bot commented Sep 11, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 7 untouched benchmarks
🆕 4 new benchmarks

Performance Changes

Mode Benchmark BASE HEAD Efficiency
🆕 Simulation test_timeseries_dataset_from_df[large] N/A 180.1 ms N/A
🆕 Simulation test_timeseries_dataset_from_df[small] N/A 10.8 ms N/A
🆕 Simulation test_foundation_forecast_multi_model[3-models] N/A 578 ms N/A
🆕 Simulation test_foundation_forecast_multi_model[5-models] N/A 965 ms N/A

Comparing feat/panel-codspeed-benchmarks (8f5472b) with main (8e5e745)

Open in CodSpeed

Annotate models as list[Forecaster] when constructing FoundationForecast.

Co-authored-by: Cursor <cursoragent@cursor.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No unresolved issues were identified.

Pull request overview

Adds CodSpeed benchmarks for large-panel preprocessing and multi-model orchestration.

Changes:

  • Adds a 100-series × 500-point fixture.
  • Parametrizes dataset benchmarks by panel size.
  • Adds 3-model and 5-model orchestration benchmarks.
  • Runs the new benchmarks in CodSpeed core.
File summaries
File Description
tests/benchmarks/test_orchestration.py Adds multi-model dataset construction benchmarks.
tests/benchmarks/test_core.py Benchmarks small and large datasets.
tests/benchmarks/conftest.py Defines the large panel fixture.
.github/workflows/codspeed.yml Includes orchestration benchmarks in CodSpeed core.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@AzulGarza
AzulGarza merged commit cbc64bc into main Sep 11, 2026
12 checks passed
@AzulGarza
AzulGarza deleted the feat/panel-codspeed-benchmarks branch September 11, 2026 21:40
AzulGarza added a commit that referenced this pull request Sep 11, 2026
Merge v0.1.5 weight cache (#22) and panel CodSpeed benchmarks (#24).
Resolve forecaster.py conflict (PanelData + weight cache TypeVar).
Add Phase 2 panel micro-benchmarks in tests/benchmarks/test_panel.py.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants