From 1392e8dc3670af8ba33dbdf5b53646862a4d7a7a Mon Sep 17 00:00:00 2001 From: Alejandro Gallo Date: Mon, 18 Jul 2022 19:27:27 +0200 Subject: [PATCH] Fix some complex pointer errors --- atrip.org | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/atrip.org b/atrip.org index 09c642d..85f5186 100644 --- a/atrip.org +++ b/atrip.org @@ -2996,7 +2996,10 @@ V^{{\color{blue}ab}}_{{\color{red}e}i} T^{{\color{blue}c}{\color{red}e}}_{ij} \ } \ ) #if defined(HAVE_CUDA) -#define __TO_DEVICEPTR(_v) (DataFieldType*)(CUdeviceptr)thrust::raw_pointer_cast((_v)) +#define __TO_DEVICEPTR(_v) \ + ((DataFieldType*) \ + (CUdeviceptr) \ + thrust::raw_pointer_cast((_v))) #define DGEMM_PARTICLES(__A, __B) \ atrip::xgemm("T", \ "N", \ @@ -3028,8 +3031,8 @@ V^{{\color{blue}ab}}_{{\color{red}e}i} T^{{\color{blue}c}{\color{red}e}}_{ij} \ ); #define MAYBE_CONJ(_conj, _buffer) \ for (size_t __i = 0; __i < NoNoNo; ++__i) \ - _conj[__i] = \ - maybeConjugate>(((DataFieldType*)_buffer)[__i]); + __TO_DEVICEPTR(_conj.data())[__i] = \ + maybeConjugate>(((DataFieldType*)(_buffer))[__i]); #else #define __TO_DEVICEPTR(_v) (_v) #define DGEMM_PARTICLES(__A, __B) \ @@ -3087,7 +3090,8 @@ V^{{\color{blue}ab}}_{{\color{red}e}i} T^{{\color{blue}c}{\color{red}e}}_{ij} \ { // Holes part %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% #ifdef HAVE_CUDA - thrust::device_vector< DataFieldType > _vhhh(NoNoNo); + thrust::device_vector< DataFieldType > _vhhh; + _vhhh.reserve(NoNoNo); #else std::vector _vhhh(NoNoNo); #endif