-
Notifications
You must be signed in to change notification settings - Fork 197
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
Fixing workaroun to cuSPARSE bug that was reverted during 24.02 release #2184
Conversation
…ake sure we fail until there's a better fix
Co-authored-by: Bradley Dice <[email protected]>
…to bug-cuda122-cusparse-bug
Co-authored-by: Paul Taylor <[email protected]>
// and incorrect results. This bug is fixed in CUDA 12.5+ so this workaround shouldn't be removed | ||
// until that version is supported. | ||
auto z_tmp = raft::make_device_matrix<ValueType, IndexType>(handle, z.extent(0), z.extent(1)); | ||
raft::copy(z_tmp.data_handle(), z.data_handle(), z.size(), raft::resource::get_cuda_stream(handle)); |
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.
Fixes style checker:
raft::copy(z_tmp.data_handle(), z.data_handle(), z.size(), raft::resource::get_cuda_stream(handle)); | |
raft::copy( | |
z_tmp.data_handle(), z.data_handle(), z.size(), raft::resource::get_cuda_stream(handle)); | |
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.
@mfoerste4's PR 2185 uses an intermediate device_uvector
instead of a raft::device_matrix
because the matrix's size()
isn't suitable for the copy here.
That PR is targeting branch-24.02
. Should we merge that PR into 24.02 and rerelease RAFT, or should we merge that PR into this one and include it in 24.04?
This workaround was accidentally reverted during this commit but the additional memory copy is needed for proper results in CUDA 12.2-12.4.