kkraus14 commented on code in PR #48259:
URL: https://github.com/apache/arrow/pull/48259#discussion_r2565636435
##########
cpp/src/arrow/gpu/cuda_test.cc:
##########
@@ -91,7 +91,12 @@ class TestCudaBase : public ::testing::Test {
Result<CUcontext> NonPrimaryRawContext() {
CUcontext ctx;
+#if CUDA_VERSION >= 13000
+ RETURN_NOT_OK(StatusFromCuda(cuCtxCreate_v4(&ctx,
/*ctxCreateParams=*/nullptr,
Review Comment:
The way it's defined in the `cuda.h` header is that `cuCtxCreate` is a macro
defined as `cuCtxCreate_v4`:
```
#define cuCtxCreate cuCtxCreate_v4
...
CUresult CUDAAPI cuCtxCreate(CUcontext *pctx, CUctxCreateParams
*ctxCreateParams, unsigned int flags, CUdevice dev);
```
This was an API breaking change in CUDA 13. If you want to generically
support CUDA 12 and CUDA 13, I'd recommend using the `cuGetProcAddress` API
(https://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__DRIVER__ENTRY__POINT.html#group__CUDA__DRIVER__ENTRY__POINT_1gcae5adad00590572ab35b2508c2d6e0d)
which is similar to using `dlsym` and allows you to work against the ABI which
is guaranteed to never be broken.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]