From e28a48021a1704c34919a737dabd6077f48dad5f Mon Sep 17 00:00:00 2001 From: Edwin Date: Wed, 12 Jun 2024 12:23:59 -0500 Subject: [PATCH 1/3] Fix issue with inline namespace thrust --- src/backend/cuda/ThrustArrayFirePolicy.hpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/backend/cuda/ThrustArrayFirePolicy.hpp b/src/backend/cuda/ThrustArrayFirePolicy.hpp index 189ee558b3..287aa01dd7 100644 --- a/src/backend/cuda/ThrustArrayFirePolicy.hpp +++ b/src/backend/cuda/ThrustArrayFirePolicy.hpp @@ -37,7 +37,11 @@ inline void return_temporary_buffer(ThrustArrayFirePolicy, Pointer p) { } // namespace cuda } // namespace arrayfire +#if defined(_WIN32) +THRUST_NAMESPACE_BEGIN +#else namespace thrust { +#endif namespace cuda_cub { template<> __DH__ inline cudaStream_t get_stream( @@ -47,7 +51,12 @@ __DH__ inline cudaStream_t get_stream( #else return arrayfire::cuda::getActiveStream(); #endif + +#if defined(_WIN32) +THRUST_NAMESPACE_END +#else } +#endif __DH__ inline cudaError_t synchronize_stream( From 8944a9ead7514c7ed10aa06e9860e9c2d60a9814 Mon Sep 17 00:00:00 2001 From: Edwin Date: Wed, 12 Jun 2024 12:40:10 -0500 Subject: [PATCH 2/3] applied clang format --- src/backend/cuda/ThrustArrayFirePolicy.hpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/backend/cuda/ThrustArrayFirePolicy.hpp b/src/backend/cuda/ThrustArrayFirePolicy.hpp index 287aa01dd7..39f83eca2b 100644 --- a/src/backend/cuda/ThrustArrayFirePolicy.hpp +++ b/src/backend/cuda/ThrustArrayFirePolicy.hpp @@ -53,20 +53,20 @@ __DH__ inline cudaStream_t get_stream( #endif #if defined(_WIN32) -THRUST_NAMESPACE_END + THRUST_NAMESPACE_END #else } #endif -__DH__ -inline cudaError_t synchronize_stream( - const arrayfire::cuda::ThrustArrayFirePolicy &) { + __DH__ + inline cudaError_t synchronize_stream( + const arrayfire::cuda::ThrustArrayFirePolicy &) { #if defined(__CUDA_ARCH__) - return cudaSuccess; + return cudaSuccess; #else return cudaStreamSynchronize(arrayfire::cuda::getActiveStream()); #endif -} + } } // namespace cuda_cub -} // namespace thrust +} // namespace cuda_cub From e24499f8155709fa8b57b0b8f5fc6a57e236c9f1 Mon Sep 17 00:00:00 2001 From: Christophe Murphy <72265703+christophe-murphy@users.noreply.github.com> Date: Wed, 30 Oct 2024 11:11:29 -0700 Subject: [PATCH 3/3] Update ThrustArrayFirePolicy.hpp Hi Edwin, there seems to be an issue caused by the clang format apply. I propose these changes. --- src/backend/cuda/ThrustArrayFirePolicy.hpp | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/backend/cuda/ThrustArrayFirePolicy.hpp b/src/backend/cuda/ThrustArrayFirePolicy.hpp index 39f83eca2b..339d3ea088 100644 --- a/src/backend/cuda/ThrustArrayFirePolicy.hpp +++ b/src/backend/cuda/ThrustArrayFirePolicy.hpp @@ -51,22 +51,21 @@ __DH__ inline cudaStream_t get_stream( #else return arrayfire::cuda::getActiveStream(); #endif - -#if defined(_WIN32) - THRUST_NAMESPACE_END -#else } -#endif - __DH__ - inline cudaError_t synchronize_stream( - const arrayfire::cuda::ThrustArrayFirePolicy &) { +__DH__ +inline cudaError_t synchronize_stream( + const arrayfire::cuda::ThrustArrayFirePolicy &) { #if defined(__CUDA_ARCH__) - return cudaSuccess; + return cudaSuccess; #else return cudaStreamSynchronize(arrayfire::cuda::getActiveStream()); #endif - } +} } // namespace cuda_cub -} // namespace cuda_cub +#if defined(_WIN32) +THRUST_NAMESPACE_END +#else +} // namespace thrust +#endif