-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[C++] Utility method to ensure an array object meetings an alignment requirement #33317
Closed
Tracked by
#33313
Labels
Milestone
Comments
@westonpace, @sanjibansg: we are interested in this PR getting merged soon. cc @icexelloss. |
westonpace
pushed a commit
that referenced
this issue
Mar 24, 2023
…alignment requirement (#14758) This PR adds a utility function which is responsible for ensuring that all the buffers of an arrow object are properly aligned. It checks all the buffers in an arrow object for alignment, and if not aligned properly, then allocates a buffer by specifying the required alignment and copies data from the previous buffer. * Closes: #33317 Authored-by: Sanjiban Sengupta <sanjiban.sg@gmail.com> Signed-off-by: Weston Pace <weston.pace@gmail.com>
Thanks @westonpace ! |
rtpsw
pushed a commit
to rtpsw/arrow
that referenced
this issue
Mar 27, 2023
…gs an alignment requirement (apache#14758) This PR adds a utility function which is responsible for ensuring that all the buffers of an arrow object are properly aligned. It checks all the buffers in an arrow object for alignment, and if not aligned properly, then allocates a buffer by specifying the required alignment and copies data from the previous buffer. * Closes: apache#33317 Authored-by: Sanjiban Sengupta <sanjiban.sg@gmail.com> Signed-off-by: Weston Pace <weston.pace@gmail.com>
ArgusLi
pushed a commit
to Bit-Quill/arrow
that referenced
this issue
May 15, 2023
…gs an alignment requirement (apache#14758) This PR adds a utility function which is responsible for ensuring that all the buffers of an arrow object are properly aligned. It checks all the buffers in an arrow object for alignment, and if not aligned properly, then allocates a buffer by specifying the required alignment and copies data from the previous buffer. * Closes: apache#33317 Authored-by: Sanjiban Sengupta <sanjiban.sg@gmail.com> Signed-off-by: Weston Pace <weston.pace@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This would look something like:
EnsureAligned(Buffer|Array|ChunkedArray|RecordBatch|Table, int minimum_alignment, MemoryPool* memory_pool);
It would fail if MemoryPool's alignment < minimum_alignment
It would iterate through each buffer of the object, if the object is not aligned properly, it would reallocate and copy the buffer (using memory_pool)
It would return a new object where every buffer is guaranteed to meet the alignment requirements.
Reporter: Weston Pace / @westonpace
Assignee: Sanjiban Sengupta / @sanjibansg
PRs and other links:
Note: This issue was originally created as ARROW-18119. Please see the migration documentation for further details.
The text was updated successfully, but these errors were encountered: