From 4210e3b6ca0912f77c6f2d9b8da7db7804ff88c9 Mon Sep 17 00:00:00 2001 From: Leonardo Echeverria Date: Mon, 14 Dec 2020 01:31:13 +0100 Subject: [PATCH 1/5] adding compatibility with CUDA < 7.0 --- aksetup_helper.py | 6 +++--- setup.py | 7 +++++-- src/cpp/cuda.hpp | 10 +++++++++- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/aksetup_helper.py b/aksetup_helper.py index 91e9ac0c..4bb1230f 100644 --- a/aksetup_helper.py +++ b/aksetup_helper.py @@ -533,10 +533,10 @@ class BoostLibraries(Libraries): def __init__(self, lib_base_name, default_lib_name=None): if default_lib_name is None: if lib_base_name == "python": - default_lib_name = "boost_python-py%d%d" % sys.version_info[:2] + default_lib_name = "boost_python%d%d" % sys.version_info[:2] else: - default_lib_name = "boost_%s" % lib_base_name - + default_lib_name = "boost_%s-mt" % lib_base_name + #print(lib_base_name) #python, thread Libraries.__init__(self, "BOOST_%s" % lib_base_name.upper(), [default_lib_name], help="Library names for Boost C++ %s library (without lib or .so)" diff --git a/setup.py b/setup.py index 2a7acbe3..efdd43a7 100644 --- a/setup.py +++ b/setup.py @@ -22,6 +22,7 @@ def search_on_path(filenames): def get_config_schema(): + from os import getenv from aksetup_helper import ( ConfigSchema, Option, @@ -58,9 +59,11 @@ def get_config_schema(): ldflags_default.extend(["/FORCE"]) elif "darwin" in sys.platform: import glob - root_candidates = glob.glob("/Developer/NVIDIA/CUDA-*") - if root_candidates: + if getenv("CUDA_ROOT"): + cuda_root_default = getenv("CUDA_ROOT") + lib64 = "lib" + else: cuda_root_default = root_candidates[-1] lib64 = "lib" diff --git a/src/cpp/cuda.hpp b/src/cpp/cuda.hpp index e3f8ef24..70560700 100644 --- a/src/cpp/cuda.hpp +++ b/src/cpp/cuda.hpp @@ -407,8 +407,9 @@ namespace pycuda // {{{ device class context; +#if CUDAPP_CUDA_VERSION >= 7000 class primary_context; - +#endif class device { private: @@ -829,9 +830,12 @@ namespace pycuda friend void context_push(boost::shared_ptr ctx); friend boost::shared_ptr gl::make_gl_context(device const &dev, unsigned int flags); +#if CUDAPP_CUDA_VERSION >= 7000 friend class primary_context; +#endif }; +#if CUDAPP_CUDA_VERSION >= 7000 class primary_context : public context { protected: @@ -846,9 +850,13 @@ namespace pycuda virtual void detach_internal() { // Primary context comes from retainPrimaryContext. + // Leo: commenting out +//#if CUDAPP_CUDA_VERSION >= 7000 CUDAPP_CALL_GUARDED_CLEANUP(cuDevicePrimaryCtxRelease, (m_device)); +//#endif } }; +#endif inline boost::shared_ptr device::make_context(unsigned int flags) From ab69cf593546eed6a4b5ab8e99b529772c20d531 Mon Sep 17 00:00:00 2001 From: ilciavo Date: Thu, 17 Dec 2020 15:30:55 +0100 Subject: [PATCH 2/5] Update cuda.hpp removing comments --- src/cpp/cuda.hpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/cpp/cuda.hpp b/src/cpp/cuda.hpp index 70560700..71be065d 100644 --- a/src/cpp/cuda.hpp +++ b/src/cpp/cuda.hpp @@ -850,10 +850,7 @@ namespace pycuda virtual void detach_internal() { // Primary context comes from retainPrimaryContext. - // Leo: commenting out -//#if CUDAPP_CUDA_VERSION >= 7000 CUDAPP_CALL_GUARDED_CLEANUP(cuDevicePrimaryCtxRelease, (m_device)); -//#endif } }; #endif From da5e2467ed5426518b19638b47e88663325b8e28 Mon Sep 17 00:00:00 2001 From: ilciavo Date: Thu, 17 Dec 2020 15:45:31 +0100 Subject: [PATCH 3/5] Update aksetup_helper.py going back to master --- aksetup_helper.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aksetup_helper.py b/aksetup_helper.py index 4bb1230f..9bdbe796 100644 --- a/aksetup_helper.py +++ b/aksetup_helper.py @@ -533,9 +533,9 @@ class BoostLibraries(Libraries): def __init__(self, lib_base_name, default_lib_name=None): if default_lib_name is None: if lib_base_name == "python": - default_lib_name = "boost_python%d%d" % sys.version_info[:2] + default_lib_name = "boost_python-py%d%d" % sys.version_info[:2] else: - default_lib_name = "boost_%s-mt" % lib_base_name + default_lib_name = "boost_%s" % lib_base_name #print(lib_base_name) #python, thread Libraries.__init__(self, "BOOST_%s" % lib_base_name.upper(), [default_lib_name], From 9d395a8c5b62f4a6c994ee8011d94bbfa895db41 Mon Sep 17 00:00:00 2001 From: ilciavo Date: Thu, 17 Dec 2020 15:48:37 +0100 Subject: [PATCH 4/5] Update setup.py going back to master --- setup.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/setup.py b/setup.py index efdd43a7..b3edf726 100644 --- a/setup.py +++ b/setup.py @@ -22,7 +22,6 @@ def search_on_path(filenames): def get_config_schema(): - from os import getenv from aksetup_helper import ( ConfigSchema, Option, @@ -60,10 +59,7 @@ def get_config_schema(): elif "darwin" in sys.platform: import glob root_candidates = glob.glob("/Developer/NVIDIA/CUDA-*") - if getenv("CUDA_ROOT"): - cuda_root_default = getenv("CUDA_ROOT") - lib64 = "lib" - else: + if root_candidates: cuda_root_default = root_candidates[-1] lib64 = "lib" From d52aaeff339826c8eb9e7f20f34158037b8fd591 Mon Sep 17 00:00:00 2001 From: ilciavo Date: Thu, 17 Dec 2020 15:49:46 +0100 Subject: [PATCH 5/5] Update aksetup_helper.py removing comments --- aksetup_helper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aksetup_helper.py b/aksetup_helper.py index 9bdbe796..812a62ed 100644 --- a/aksetup_helper.py +++ b/aksetup_helper.py @@ -536,7 +536,7 @@ def __init__(self, lib_base_name, default_lib_name=None): default_lib_name = "boost_python-py%d%d" % sys.version_info[:2] else: default_lib_name = "boost_%s" % lib_base_name - #print(lib_base_name) #python, thread + Libraries.__init__(self, "BOOST_%s" % lib_base_name.upper(), [default_lib_name], help="Library names for Boost C++ %s library (without lib or .so)"