-
Notifications
You must be signed in to change notification settings - Fork 240
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
[FEA] explore faster data transitions #507
Labels
cudf_dependency
An issue or PR with this label depends on a new feature in cudf
epic
Issue that encompasses a significant feature or body of work
performance
A performance related task/issue
Comments
revans2
added
feature request
New feature or request
? - Needs Triage
Need team to review and classify
labels
Aug 4, 2020
sameerz
added
epic
Issue that encompasses a significant feature or body of work
and removed
feature request
New feature or request
labels
Dec 18, 2020
sameerz
added
the
cudf_dependency
An issue or PR with this label depends on a new feature in cudf
label
Feb 18, 2021
Removing this from the sprint milestones as this is an overarching feature with sub-tasks for each sprint. |
pxLi
added a commit
to pxLi/spark-rapids
that referenced
this issue
May 12, 2022
Signed-off-by: Peixin Li <[email protected]>
tgravescs
pushed a commit
to tgravescs/spark-rapids
that referenced
this issue
Nov 30, 2023
Signed-off-by: spark-rapids automation <[email protected]> Signed-off-by: spark-rapids automation <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
cudf_dependency
An issue or PR with this label depends on a new feature in cudf
epic
Issue that encompasses a significant feature or body of work
performance
A performance related task/issue
When working with some of the cache/persist operations it has become very clear that moving data from CPU to GPU and back is a real performance problem. From past experience trying to optimize shuffle, part of the problem come down to the number of buffers that need to be moved. This is something that is going to become more and more of a problem with nested data types. The rest of the problem has a lot to do with the actual data access pattern. Going from row to column and column to row inherently forces one of the operations to stride through memory. This is really bad for the CPU cache.
We have tried to write a custom kernel to translate GPU columnar data into spark's unsafe row format in the past, and it did help some, but the memory format is really wasteful and resulted in bad performance because we could not allocate enough GPU memory to make it worth while.
I personally would like to see us work with the cudf team to develop a packed row based format that we could translate to/from on the GPU. Doing a row based to row based translation is not that expensive for the CPU.
Tasks:
The text was updated successfully, but these errors were encountered: