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

Add workaround for crash in libcudf debug build using output_indexalator in thrust::lower_bound #8432

Merged
merged 26 commits into from
Jun 11, 2021

Conversation

davidwendt
Copy link
Contributor

@davidwendt davidwendt commented Jun 3, 2021

Closes #6521

The thrust::lower_bound call is crashing on a libcudf debug build when using the output_indexalator. I've opened an issue in the thrust github keep track of this. The problem only occurs when using the -G nvcc compile option.

I found a workaround using a thrust::transform along with device lambda containing a thrust::lower_bound(seq) call for each element. This PR adds the workaround which is only used in a debug build since the error occurs in functions that used as utilities for other functions when using dictionary columns.

@davidwendt davidwendt added bug Something isn't working 2 - In Progress Currently a work in progress libcudf Affects libcudf (C++/CUDA) code. non-breaking Non-breaking change labels Jun 3, 2021
@davidwendt davidwendt self-assigned this Jun 3, 2021
@codecov
Copy link

codecov bot commented Jun 4, 2021

Codecov Report

❗ No coverage uploaded for pull request base (branch-21.08@79f42f9). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@               Coverage Diff               @@
##             branch-21.08    #8432   +/-   ##
===============================================
  Coverage                ?   82.84%           
===============================================
  Files                   ?      109           
  Lines                   ?    17913           
  Branches                ?        0           
===============================================
  Hits                    ?    14840           
  Misses                  ?     3073           
  Partials                ?        0           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 79f42f9...70e49d3. Read the comment docs.

@davidwendt davidwendt changed the title Add workaround for crash in libcudf debug build using dictionary-iterator in thrust::lower_bound Add workaround for crash in libcudf debug build using output_indexalator in thrust::lower_bound Jun 4, 2021
@davidwendt davidwendt added 3 - Ready for Review Ready for review by team and removed 2 - In Progress Currently a work in progress labels Jun 7, 2021
@davidwendt davidwendt marked this pull request as ready for review June 7, 2021 21:50
@davidwendt davidwendt requested a review from a team as a code owner June 7, 2021 21:50
@davidwendt davidwendt requested review from devavret and vuule June 7, 2021 21:50
@davidwendt
Copy link
Contributor Author

nvbug 3322776 was created for this by the thrust team as well

@vuule
Copy link
Contributor

vuule commented Jun 11, 2021

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 30b8a62 into rapidsai:branch-21.08 Jun 11, 2021
@davidwendt davidwendt deleted the debug-dictionary-test branch November 8, 2021 14:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3 - Ready for Review Ready for review by team bug Something isn't working libcudf Affects libcudf (C++/CUDA) code. non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Broken tests in debug build
4 participants