ArrowMetal
ReleasedThe first Apache Arrow project to run compute on the Apple silicon GPU. Every Mac since 2020 shares one physical memory between CPU and GPU, so an Arrow buffer in Metal shared memory is already a GPU buffer, with nothing to upload or download. ArrowMetal runs 307 of Arrow's 307 compute functions there, honouring validity bitmaps, offsets, dictionaries and nested types, from Python, Rust, Swift, Go, R, TypeScript and C over one C ABI. Measured, not claimed: 339 benchmark rows on an Apple M4 Max (16 cores, 50M rows) against the fastest CPU idiom of Polars, pyarrow, pandas and numpy — take at 24.2× pyarrow on 25M random indices, string contains 7.0× Polars lazy on 10M rows, sort float64 4.1× Polars, group-by sum 3.8× pyarrow Acero — and the 77 rows where the CPU is still ahead published next to them, grouped by cause. 39,069 differential test cases against pyarrow; fourteen findings reported upstream, two open as Apache Arrow pull requests. v0.1.0 on PyPI and crates.io; an independent Apache-2.0 project, listed on Apache Arrow's Powered By page.



