From 399818a482d87816bdad9fc537bedf65a7139fd9 Mon Sep 17 00:00:00 2001 From: Salvatore Filippone Date: Wed, 10 Apr 2024 05:08:12 -0400 Subject: [PATCH] Never do arithmetic on a (void *) --- cuda/fcusparse_fct.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cuda/fcusparse_fct.h b/cuda/fcusparse_fct.h index c28e579a..bedc9c48 100644 --- a/cuda/fcusparse_fct.h +++ b/cuda/fcusparse_fct.h @@ -276,8 +276,14 @@ int T_spmmCSRGDevice(T_Cmat *Matrix, TYPE alpha, void *deviceX, // CHECK_CUSPARSE(cusparseDestroyDnMat(vecX)); // CHECK_CUSPARSE(cusparseDestroyDnMat(vecY)); for(j=0;jcount_;j++) { +#if 0 vX=(x->v_)+(x->pitch_)*j*sizeof(TYPE); vY=(y->v_)+(y->pitch_)*j*sizeof(TYPE); +#else + vX=(void*)(((TYPE *)(x->v_))+(x->pitch_)*j) ; + vY=(void*)(((TYPE *)(y->v_))+(y->pitch_)*j) ; +#endif + // fprintf(stderr,"CUDA ENTERED 1 %d %p %p %d %d %d %d\n",j, vX, vY, pitch, y->size_, cMat->m, cMat->n); CHECK_CUSPARSE( cusparseCreateDnVec(&vecY, cMat->m, vY, CUSPARSE_BASE_TYPE) ); CHECK_CUSPARSE( cusparseCreateDnVec(&vecX, cMat->n, vX, CUSPARSE_BASE_TYPE) );