Lines Matching refs:d_array
32 *need_sync = has_valid_array && !impl->d_array; in CeedVectorNeedSync_Cuda()
53 impl->d_array = impl->d_array_borrowed; in CeedVectorSyncH2D_Cuda()
55 impl->d_array = impl->d_array_owned; in CeedVectorSyncH2D_Cuda()
58 impl->d_array = impl->d_array_owned; in CeedVectorSyncH2D_Cuda()
60 …CeedCallCuda(CeedVectorReturnCeed(vec), cudaMemcpy(impl->d_array, impl->h_array, bytes, cudaMemcpy… in CeedVectorSyncH2D_Cuda()
73 …CeedCheck(impl->d_array, CeedVectorReturnCeed(vec), CEED_ERROR_BACKEND, "No valid device data to s… in CeedVectorSyncD2H_Cuda()
90 …CeedCallCuda(CeedVectorReturnCeed(vec), cudaMemcpy(impl->h_array, impl->d_array, bytes, cudaMemcpy… in CeedVectorSyncD2H_Cuda()
121 impl->d_array = NULL; in CeedVectorSetAllInvalid_Cuda()
132 *has_valid_array = impl->h_array || impl->d_array; in CeedVectorHasValidArray_Cuda()
200 … (const CeedScalar **)&impl->d_array_borrowed, (const CeedScalar **)&impl->d_array)); in CeedVectorSetArrayDevice_Cuda()
234 int CeedDeviceCopyStrided_Cuda(CeedScalar *d_array, CeedSize start, CeedSize stop, CeedSize step, C…
253 if (impl->d_array) { in CeedVectorCopyStrided_Cuda()
264 …CeedCallCublas(ceed, cublasScopy_64(handle, (int64_t)(stop - start), impl->d_array + start, (int64… in CeedVectorCopyStrided_Cuda()
266 …CeedCallCublas(ceed, cublasDcopy_64(handle, (int64_t)(stop - start), impl->d_array + start, (int64… in CeedVectorCopyStrided_Cuda()
270 CeedCallBackend(CeedDeviceCopyStrided_Cuda(impl->d_array, start, stop, step, copy_array)); in CeedVectorCopyStrided_Cuda()
280 impl->d_array = NULL; in CeedVectorCopyStrided_Cuda()
298 int CeedDeviceSetValue_Cuda(CeedScalar *d_array, CeedSize length, CeedScalar val);
310 if (!impl->d_array && !impl->h_array) { in CeedVectorSetValue_Cuda()
312 impl->d_array = impl->d_array_borrowed; in CeedVectorSetValue_Cuda()
316 impl->d_array = impl->d_array_owned; in CeedVectorSetValue_Cuda()
323 if (impl->d_array) { in CeedVectorSetValue_Cuda()
325 …CeedCallCuda(CeedVectorReturnCeed(vec), cudaMemset(impl->d_array, 0, length * sizeof(CeedScalar))); in CeedVectorSetValue_Cuda()
327 CeedCallBackend(CeedDeviceSetValue_Cuda(impl->d_array, length, val)); in CeedVectorSetValue_Cuda()
332 impl->d_array = NULL; in CeedVectorSetValue_Cuda()
348 int CeedDeviceSetValueStrided_Cuda(CeedScalar *d_array, CeedSize start, CeedSize stop, CeedSize ste…
361 if (impl->d_array) { in CeedVectorSetValueStrided_Cuda()
362 CeedCallBackend(CeedDeviceSetValueStrided_Cuda(impl->d_array, start, stop, step, val)); in CeedVectorSetValueStrided_Cuda()
366 impl->d_array = NULL; in CeedVectorSetValueStrided_Cuda()
392 impl->d_array = NULL; in CeedVectorTakeArray_Cuda()
414 *array = impl->d_array; in CeedVectorGetArrayCore_Cuda()
441 impl->d_array = *array; in CeedVectorGetArray_Cuda()
467 if (impl->d_array_borrowed) impl->d_array = impl->d_array_borrowed; in CeedVectorGetArrayWrite_Cuda()
468 else impl->d_array = impl->d_array_owned; in CeedVectorGetArrayWrite_Cuda()
483 const CeedScalar *d_array; in CeedVectorNorm_Cuda() local
501 CeedCallBackend(CeedVectorGetArrayRead(vec, CEED_MEM_DEVICE, &d_array)); in CeedVectorNorm_Cuda()
507 … CeedCallCublas(ceed, cublasSasum_64(handle, (int64_t)length, (float *)d_array, 1, (float *)norm)); in CeedVectorNorm_Cuda()
513 d_array_start = (float *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
523 …CeedCallCublas(ceed, cublasDasum_64(handle, (int64_t)length, (double *)d_array, 1, (double *)norm)… in CeedVectorNorm_Cuda()
529 d_array_start = (double *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
543 … CeedCallCublas(ceed, cublasSnrm2_64(handle, (int64_t)length, (float *)d_array, 1, (float *)norm)); in CeedVectorNorm_Cuda()
549 d_array_start = (float *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
560 …CeedCallCublas(ceed, cublasDnrm2_64(handle, (int64_t)length, (double *)d_array, 1, (double *)norm)… in CeedVectorNorm_Cuda()
566 d_array_start = (double *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
584 CeedCallCublas(ceed, cublasIsamax_64(handle, (int64_t)length, (float *)d_array, 1, &index)); in CeedVectorNorm_Cuda()
585 …CeedCallCuda(ceed, cudaMemcpy(&norm_no_abs, impl->d_array + index - 1, sizeof(CeedScalar), cudaMem… in CeedVectorNorm_Cuda()
593 d_array_start = (float *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
608 CeedCallCublas(ceed, cublasIdamax_64(handle, (int64_t)length, (double *)d_array, 1, &index)); in CeedVectorNorm_Cuda()
609 …CeedCallCuda(ceed, cudaMemcpy(&norm_no_abs, impl->d_array + index - 1, sizeof(CeedScalar), cudaMem… in CeedVectorNorm_Cuda()
617 d_array_start = (double *)d_array + (CeedSize)(i)*INT_MAX; in CeedVectorNorm_Cuda()
631 CeedCallBackend(CeedVectorRestoreArrayRead(vec, &d_array)); in CeedVectorNorm_Cuda()
649 int CeedDeviceReciprocal_Cuda(CeedScalar *d_array, CeedSize length);
661 if (impl->d_array) CeedCallBackend(CeedDeviceReciprocal_Cuda(impl->d_array, length)); in CeedVectorReciprocal_Cuda()
689 if (impl->d_array) { in CeedVectorScale_Cuda()
695 …Cublas(CeedVectorReturnCeed(x), cublasSscal_64(handle, (int64_t)length, &alpha, impl->d_array, 1)); in CeedVectorScale_Cuda()
697 …Cublas(CeedVectorReturnCeed(x), cublasDscal_64(handle, (int64_t)length, &alpha, impl->d_array, 1)); in CeedVectorScale_Cuda()
700 CeedCallBackend(CeedDeviceScale_Cuda(impl->d_array, alpha, length)); in CeedVectorScale_Cuda()
705 impl->d_array = NULL; in CeedVectorScale_Cuda()
734 if (y_impl->d_array) { in CeedVectorAXPY_Cuda()
741 …nCeed(y), cublasSaxpy_64(handle, (int64_t)length, &alpha, x_impl->d_array, 1, y_impl->d_array, 1)); in CeedVectorAXPY_Cuda()
743 …nCeed(y), cublasDaxpy_64(handle, (int64_t)length, &alpha, x_impl->d_array, 1, y_impl->d_array, 1)); in CeedVectorAXPY_Cuda()
746 CeedCallBackend(CeedDeviceAXPY_Cuda(y_impl->d_array, alpha, x_impl->d_array, length)); in CeedVectorAXPY_Cuda()
752 y_impl->d_array = NULL; in CeedVectorAXPY_Cuda()
781 if (y_impl->d_array) { in CeedVectorAXPBY_Cuda()
783 CeedCallBackend(CeedDeviceAXPBY_Cuda(y_impl->d_array, alpha, beta, x_impl->d_array, length)); in CeedVectorAXPBY_Cuda()
817 if (!w_impl->d_array && !w_impl->h_array) { in CeedVectorPointwiseMult_Cuda()
820 if (w_impl->d_array) { in CeedVectorPointwiseMult_Cuda()
823 …CeedCallBackend(CeedDevicePointwiseMult_Cuda(w_impl->d_array, x_impl->d_array, y_impl->d_array, le… in CeedVectorPointwiseMult_Cuda()