Skip to content

refactor(array): use buffer allocator in execution context - #9669

Merged
gatesn merged 4 commits into
developfrom
ngates/buffer-allocator-context
Sep 2, 2026
Merged

refactor(array): use buffer allocator in execution context#9669
gatesn merged 4 commits into
developfrom
ngates/buffer-allocator-context

Conversation

@gatesn

@gatesn gatesn commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Add a buffer allocator to execution and I/O contexts.

Changes

  • Store BufferAllocatorRef in ExecutionContext.
  • Use it for chunked canonicalization.
  • Allocate file and object-store reads with the caller allocator.
  • Remove the old array memory allocator wrapper.

@codspeed-hq

codspeed-hq Bot commented Aug 27, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 60.69%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 1 improved benchmark
✅ 2171 untouched benchmarks
⏩ 206 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
WallTime arrow_checked_add_u32_neon[16384] 20.5 µs 12.7 µs +60.69%

Tip

Curious why performance improved? Comment @codspeedbot explain why performance improved on this PR, or directly use the CodSpeed MCP with your agent.


Comparing ngates/buffer-allocator-context (c79a228) with develop (98dd977)

Open in CodSpeed

Footnotes

  1. 206 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@gatesn gatesn mentioned this pull request Aug 27, 2026
5 tasks
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 318a807 to ea37874 Compare August 27, 2026 19:38
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from 16b6ae2 to 8b88427 Compare August 27, 2026 21:37
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 8b88427 to 884d9d1 Compare August 27, 2026 21:38
@gatesn gatesn added the changelog/feature A new feature label Aug 27, 2026
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from 97a7955 to af8266f Compare August 28, 2026 14:56
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 3 times, most recently from 149f535 to 36fca40 Compare August 28, 2026 17:35
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 36fca40 to f06d432 Compare August 28, 2026 18:02
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 3 times, most recently from 918a550 to ed3f7fc Compare August 28, 2026 20:41
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from 3e970c7 to dd87611 Compare August 29, 2026 01:01
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from fa9bf7f to 15d742c Compare August 29, 2026 02:00
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 15d742c to 8e1c1bd Compare August 29, 2026 02:45
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 8e1c1bd to 2e9ce47 Compare August 29, 2026 03:17
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from 018d08c to 2bbf0be Compare September 2, 2026 14:44
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 2bbf0be to bcec2a5 Compare September 2, 2026 14:47
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from bcec2a5 to 619ceed Compare September 2, 2026 15:35
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 619ceed to 43d69de Compare September 2, 2026 16:10
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 43d69de to 86b3061 Compare September 2, 2026 16:43
@gatesn
gatesn marked this pull request as ready for review September 2, 2026 16:47
@gatesn
gatesn requested a review from robert3005 September 2, 2026 16:47
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 86b3061 to 836d32d Compare September 2, 2026 16:59
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch 2 times, most recently from 07d23b2 to 37ad347 Compare September 2, 2026 17:27
Base automatically changed from ngates/buffer-allocator-core to develop September 2, 2026 21:41
Signed-off-by: Nicholas Gates <nick@nickgates.com>
Signed-off-by: Nicholas Gates <nick@nickgates.com>
Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn
gatesn force-pushed the ngates/buffer-allocator-context branch from 37ad347 to 78c996e Compare September 2, 2026 21:41
Signed-off-by: Nicholas Gates <nick@nickgates.com>
@gatesn
gatesn merged commit 792cef7 into develop Sep 2, 2026
83 checks passed
@gatesn
gatesn deleted the ngates/buffer-allocator-context branch September 2, 2026 23:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/feature A new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants