Skip to content
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

Avoid invalid memory access in experimental FIL for large output size #5365

Merged
merged 9 commits into from
May 11, 2023

Conversation

wphicks
Copy link
Contributor

@wphicks wphicks commented Apr 17, 2023

If the output size for a prediction exceeds the maximum available shared memory, the size of the output workspace was previously being set to 0, resulting in an invalid memory access. The correct behavior is to simply stop trying to fit the output in shared memory and fall back to using global memory.

This change causes FIL to only go through the process of reducing rows per block iteration if it has a chance of changing the outcome. If we have already determined that we cannot store output to shared memory, we simply skip that step, knowing that we will fall back to global memory.

@wphicks wphicks requested a review from a team as a code owner April 17, 2023 15:09
@wphicks wphicks added bug Something isn't working non-breaking Non-breaking change and removed CUDA/C++ labels Apr 17, 2023
Copy link
Member

@dantegd dantegd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

codeowner approval

@wphicks
Copy link
Contributor Author

wphicks commented May 11, 2023

/merge

@rapids-bot rapids-bot bot merged commit b03f9f1 into rapidsai:branch-23.06 May 11, 2023
rapids-bot bot pushed a commit that referenced this pull request May 26, 2023
Replaces #5307

Depends on #5365

Authors:
  - Philip Hyunsu Cho (https://github.com/hcho3)
  - Dante Gama Dessavre (https://github.com/dantegd)

Approvers:
  - William Hicks (https://github.com/wphicks)

URL: #5358
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working CUDA/C++ non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants