CAMLprim value spoc_cublasSasum (value n, value x, value incx, value dev){ CAMLparam4(n,x,incx, dev); CAMLlocal4(dev_vec_array, dev_vec, res, gi); CUdeviceptr d_A; float result; int id; GET_VEC(x, d_A); CUBLAS_GET_CONTEXT; result = cublasSasum(Int_val(n), (float*)d_A, Int_val(incx)); CUBLAS_CHECK_CALL(cublasGetError()); res = caml_copy_double((double)result); CUDA_RESTORE_CONTEXT; CAMLreturn((res)); }
static double cuda_asum(long size, const float* src) { return cublasSasum(size, src, 1); }
float AssomOnline::getErr() { float error; cublasSasum(cuhandle,AGENTSNUM,winErr,1,&error); return error/AGENTSNUM; }
void caffe_gpu_asum<float>(const int n, const float* x, float* y) { CUBLAS_CHECK(cublasSasum(Caffe::cublas_handle(), n, x, 1, y)); }
float magma_sasum( magma_int_t n, const float *dx, magma_int_t incx ) { return cublasSasum( n, dx, incx ); }