-
Notifications
You must be signed in to change notification settings - Fork 942
Improve performance of strings split-record on whitespace #18510
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
base: branch-25.06
Are you sure you want to change the base?
Conversation
Benchmark results show up to 2x runtime performance improvement
|
Just to confirm my understanding, this PR replaces the on-the-fly transform iterator with materializing the intermediate data, followed by a transform so that reduce register usage is reduced in the final |
That is correct. The |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice find! I've been running into a lot of register pressure lately, so it's great to see a showcase that gets rid of it without much extra coding effort.
Description
Improves the performance of
cudf::strings::split_record()
when specifying whitespace-split delimiter.The change includes computing token counts into an intermediate buffer before computing offsets.
Result is up to a 2x performance improvement especially for longer strings.
Checklist