Skip to content

timely-util: Reduce Columnar ship size from 2 MiB to 32 KiB#37855

Draft
antiguru wants to merge 1 commit into
MaterializeInc:mainfrom
antiguru:mh/columnar-64kib
Draft

timely-util: Reduce Columnar ship size from 2 MiB to 32 KiB#37855
antiguru wants to merge 1 commit into
MaterializeInc:mainfrom
antiguru:mh/columnar-64kib

Conversation

@antiguru

@antiguru antiguru commented Jul 24, 2026

Copy link
Copy Markdown
Member

Lower the Column chunk ship threshold from 2 MiB to 32 KiB.
SHIP_WORDS drops from 1 << 18 to 1 << 12 words.
32 KiB is jemalloc's default tcache_max, so shipped chunks stay in the per-thread cache instead of hitting the arena-lock path.

The builder path previously duplicated the 2 MiB literal with its own hardcoded 1 << 18.
It now references super::SHIP_WORDS, so the merger and builder ship paths share one source of truth and stay sized comparably, as the doc comment already promised.
This also prevents the two thresholds from silently diverging on future changes.

🤖 Generated with Claude Code

Lower the `Column` chunk ship threshold from 2 MiB to 32 KiB by
changing `SHIP_WORDS` from `1 << 18` to `1 << 12` words. 32 KiB is
jemalloc's default `tcache_max`, so shipped chunks stay in the
per-thread cache instead of taking the arena lock path.

The builder path previously carried its own hardcoded `1 << 18`
literal, duplicating the merger's `SHIP_WORDS`. Point the builder at
`super::SHIP_WORDS` instead so both ship paths share a single source
of truth and stay sized comparably, which the doc comment already
promised.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@antiguru
antiguru force-pushed the mh/columnar-64kib branch from 49ea028 to 03c1f50 Compare July 24, 2026 09:04
@antiguru antiguru changed the title timely-util: Reduce Columnar ship size from 2 MiB to 64 KiB timely-util: Reduce Columnar ship size from 2 MiB to 32 KiB Jul 24, 2026
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.

1 participant