[Openmp-commits] [PATCH] D95274: [libomptarget][cuda] Call v2 functions explicitly

Jon Chesterfield via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Mon Jan 25 07:47:11 PST 2021


JonChesterfield added a comment.

I think missing TimeProfiler.h is a known problem, independent from this. It can be worked around locally by disabling the profiling.

The `error: use of undeclared identifier 'cuDevicePrimaryCtxRelease_v2'; did you mean 'cuDevicePrimaryCtxRelease'?` is a hazard though. This means that at least one person (you!) is using a cuda version which is old enough to not use the _v2 appended functions.

We can unblock you by going back to the non-suffixed versions in rtl.cpp and adding the macros back to dynamic_cuda/cuda.h. That will mean the following combinations work:

- directly linking against an old cuda
- directly linking against a new cuda
- dlopen of a new cuda

What version of cuda are you using? It might be useful to know when things changed.

I think we can dlopen cuda, and try to load cuMemcpyDtoHAsync_v2, and then try to load cuMemcpyDtoHAsync on failure. That would get us some degree of robustness to different symbol versions.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D95274/new/

https://reviews.llvm.org/D95274



More information about the Openmp-commits mailing list