feat[gpu]: arrow device array decimal export#8155
Merged
Merged
Conversation
4d21576 to
03c8b95
Compare
Merging this PR will not alter performance
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | chunked_varbinview_canonical_into[(1000, 10)] |
161.3 µs | 197.6 µs | -18.37% |
| ❌ | Simulation | bitwise_not_vortex_buffer_mut[128] |
246.1 ns | 275.3 ns | -10.6% |
| ⚡ | Simulation | chunked_varbinview_canonical_into[(100, 100)] |
308.3 µs | 273.3 µs | +12.8% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing ad/arrow-device-decimal (ba179ed) with develop (1552135)
6681667 to
b15cfc3
Compare
b15cfc3 to
867a83f
Compare
onursatici
reviewed
May 29, 2026
robert3005
approved these changes
May 29, 2026
bce21b4 to
424c6bd
Compare
424c6bd to
c56a36f
Compare
Cherry-pick of #8197 (Joe Isaacs). Enables narrow Arrow decimal types in the shared Vortex-to-Arrow mapping now that DataFusion 51+ and arrow-rs 56+ support them. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Joe Isaacs <joe.isaacs@live.co.uk> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
Vortex DecimalArray decouples physical storage width from declared precision, but Arrow fixes the buffer width by precision. Add a CUDA kernel that widens decimal value buffers on the GPU during export so they match the Arrow-required layout (Decimal32/64/128/256). The kernel handles all source widths (i8..i256) since compression can produce narrow storage for any precision. Narrowing (storage wider than the target) is rejected rather than silently truncated, since detecting overflow on-device would need a device-to-host sync. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
c56a36f to
b4d669e
Compare
b4d669e to
ef7e89e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.