Skip to content

Firebolt: keep the three entries in the no-cold bucket - #1724

Open
hall-alex wants to merge 1 commit into
ClickHouse:mainfrom
hall-alex:submission/no-cold
Open

Firebolt: keep the three entries in the no-cold bucket#1724
hall-alex wants to merge 1 commit into
ClickHouse:mainfrom
hall-alex:submission/no-cold

Conversation

@hall-alex

@hall-alex hall-alex commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Firebolt does not handle the start / stop cycle from #1666 gracefully as of Sept 2026, so those runs do not lead to meaningful/interesting measurements. This restores BENCH_RESTARTABLE=no and the no-cold tag on firebolt, firebolt-parquet and firebolt-parquet-partitioned.

Note that we continue to flush caches as all other BENCH_RESTARTABLE=no systems, see here.

Also adds a c8g.metal-48xl result measured in that configuration.

The result files #1666 produced were true cold runs and keep no tag; new runs will carry it again.

Additionally, switches the firebolt entry from engine:dev to engine:dev_mv1, a build we are verifying and re-tagging by hand, so that any mainline regressions cannot walk into the benchmark unnoticed.

@hall-alex

Copy link
Copy Markdown
Contributor Author

@alexey-milovidov, can you please take a look?

Firebolt Core does not handle the start / stop cycle ClickHouse#1666 introduced
gracefully as of Sept 2026, so those runs do not lead to meaningful
measurements. Restore BENCH_RESTARTABLE=no and the no-cold tag on
firebolt, firebolt-parquet and firebolt-parquet-partitioned, note at
each start/stop that the cycle is off, and add a re-measured
c8g.metal-48xl result taken in that configuration.

The firebolt entry now pulls engine:dev_mv1, a build we verify and
re-tag by hand, rather than engine:dev, which moves with every commit
on our mainline.

Caches are still flushed before the first run of each query, as for
every other BENCH_RESTARTABLE=no system. The result files ClickHouse#1666
produced were true cold runs and keep no tag.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@alexey-milovidov

Copy link
Copy Markdown
Member

does not handle the start / stop cycle

How exactly?

@hall-alex

hall-alex commented Sep 1, 2026

Copy link
Copy Markdown
Contributor Author

@alexey-milovidov, thanks a lot for the fast response!

How exactly?

Essentially, we are developing for an "always up" type of usage. E.g., certain per table metadata takes time to load -- we don't have (and do not plan on) optimizing for super-fast truly cold queries. Some of this noise creeps into the 2 warm runs as well. I think the "no-cold" bucket simply makes more sense for firebolt as of today.

If this gives the default view with the combined metric an "unfair picture" of Firebolt (and other no-cold systems), you could consider this PR . I hope I'm not misunderstanding the intention of that PR, but I think this is about not counting the cold runs or the load-times for systems that don't actually measure "true cold runs" or "true load-times". Please correct me if I'm wrong.

@alexey-milovidov

Copy link
Copy Markdown
Member

The intent was to restart every system. Even in-memory data frame systems are restarted, they just have to load the dataset from scratch for every query and count it as the cold query time. It is okay that systems have to load metadata at start. However, there is a loophole - the startup time is not counted, iirc, so lazy loading is penalized unfairly. I will give more thought to this.

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