-
Notifications
You must be signed in to change notification settings - Fork 204
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
[WIP] Build RMM's Python bindings with PTDS #480
Conversation
Please update the changelog in order to start CI tests. View the gpuCI docs here. |
75f826a
to
933b1a3
Compare
Defines `CUDA_API_PER_THREAD_DEFAULT_STREAM` for Setuptools `Extensions` built by `setup.py`. This should make sure the per-thread default stream is used by these Python extensions. https://docs.nvidia.com/cuda/cuda-runtime-api/stream-sync-behavior.html
rerun tests |
We should be careful to test at least cudf with this before merging as well as doing some basic benchmarking to see if the extra synchronization caused by mixing PTDS and legacy default streams cause slowdowns. |
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.
Blocking merging until I'm confident this is what you really want.
This will force all Python uses of RMM to run with PTDS enabled. Is this what we want by default?
cc @pentschev (for vis) |
@@ -84,6 +84,10 @@ def get_cuda_version_from_header(cuda_include_dir): | |||
except Exception: | |||
nthreads = 0 | |||
|
|||
define_macros = [ | |||
("CUDA_API_PER_THREAD_DEFAULT_STREAM", None), |
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.
So does this make this a command line option? How does this work? (Not that familiar with setup.py)
Sorry was updating this based on feedback from Peter earlier. Have marked it as a draft. |
This PR has been marked stale due to no recent activity in the past 30d. Please close this PR if it is no longer required. Otherwise, please respond with a comment indicating any updates. This PR will be marked rotten if there is no activity in the next 60d. |
@jakirkham can we close this? |
I think we want to keep this open as a point of reference, but no action should be taken on it. |
Ah sorry yeah we can close. I think Peter has PR ( #633 ), which is the successor to this |
Neither is a great option. Closing this one. |
What do we not like about the other one? Sounds good. |
See the discussion starting here. #633 (comment) |
Defines
CUDA_API_PER_THREAD_DEFAULT_STREAM
for SetuptoolsExtensions
built bysetup.py
. This should make sure the per-thread default stream is used by these Python extensions.Note: We still need other downstream changes as well ( rapidsai/cudf#5922 ). So we may want to hold on this a bit until those are resolved (hence marked as WIP).Based on discussions with others, it sounds like this change is fine on its own. So marking as ready.https://docs.nvidia.com/cuda/cuda-runtime-api/stream-sync-behavior.html
cc @kkraus14 @shwina @jrhemstad