Lines Matching +full:- +full:- +full:ceed
1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors.
2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details.
4 // SPDX-License-Identifier: BSD-2-Clause
6 // This file is part of CEED: http://github.com/ceed
8 #include "ceed-cuda-common.h"
10 #include <ceed.h>
11 #include <ceed/backend.h>
16 //------------------------------------------------------------------------------
18 //------------------------------------------------------------------------------
19 int CeedInit_Cuda(Ceed ceed, const char *resource) { in CeedInit_Cuda() argument
22 const int device_id = (device_spec) ? atoi(device_spec + 11) : -1; in CeedInit_Cuda()
25 CeedCallCuda(ceed, cudaGetDevice(¤t_device_id)); in CeedInit_Cuda()
27 CeedCallCuda(ceed, cudaSetDevice(device_id)); in CeedInit_Cuda()
31 CeedCallBackend(CeedGetData(ceed, &data)); in CeedInit_Cuda()
32 data->device_id = current_device_id; in CeedInit_Cuda()
33 CeedCallCuda(ceed, cudaGetDeviceProperties(&data->device_prop, current_device_id)); in CeedInit_Cuda()
37 //------------------------------------------------------------------------------
39 //------------------------------------------------------------------------------
40 int CeedDestroy_Cuda(Ceed ceed) { in CeedDestroy_Cuda() argument
43 CeedCallBackend(CeedGetData(ceed, &data)); in CeedDestroy_Cuda()
44 if (data->cublas_handle) CeedCallCublas(ceed, cublasDestroy(data->cublas_handle)); in CeedDestroy_Cuda()
49 //------------------------------------------------------------------------------
51 //------------------------------------------------------------------------------
52 static inline int CeedSetDeviceGenericArray_Cuda(Ceed ceed, const void *source_array, CeedCopyMode … in CeedSetDeviceGenericArray_Cuda() argument
60 …if (!*(void **)target_array_owned) CeedCallCuda(ceed, cudaMalloc(target_array_owned, size_unit * n… in CeedSetDeviceGenericArray_Cuda()
64 …if (source_array) CeedCallCuda(ceed, cudaMemcpy(*(void **)target_array, source_array, size_unit * … in CeedSetDeviceGenericArray_Cuda()
67 CeedCallCuda(ceed, cudaFree(*(void **)target_array_owned)); in CeedSetDeviceGenericArray_Cuda()
73 CeedCallCuda(ceed, cudaFree(*(void **)target_array_owned)); in CeedSetDeviceGenericArray_Cuda()
81 int CeedSetDeviceBoolArray_Cuda(Ceed ceed, const bool *source_array, CeedCopyMode copy_mode, CeedSi… in CeedSetDeviceBoolArray_Cuda() argument
83 …CeedCallBackend(CeedSetDeviceGenericArray_Cuda(ceed, source_array, copy_mode, sizeof(bool), num_va… in CeedSetDeviceBoolArray_Cuda()
88 int CeedSetDeviceCeedInt8Array_Cuda(Ceed ceed, const CeedInt8 *source_array, CeedCopyMode copy_mode… in CeedSetDeviceCeedInt8Array_Cuda() argument
90 …CeedCallBackend(CeedSetDeviceGenericArray_Cuda(ceed, source_array, copy_mode, sizeof(CeedInt8), nu… in CeedSetDeviceCeedInt8Array_Cuda()
95 int CeedSetDeviceCeedIntArray_Cuda(Ceed ceed, const CeedInt *source_array, CeedCopyMode copy_mode, … in CeedSetDeviceCeedIntArray_Cuda() argument
97 …CeedCallBackend(CeedSetDeviceGenericArray_Cuda(ceed, source_array, copy_mode, sizeof(CeedInt), num… in CeedSetDeviceCeedIntArray_Cuda()
102 int CeedSetDeviceCeedScalarArray_Cuda(Ceed ceed, const CeedScalar *source_array, CeedCopyMode copy_… in CeedSetDeviceCeedScalarArray_Cuda() argument
105 …CeedCallBackend(CeedSetDeviceGenericArray_Cuda(ceed, source_array, copy_mode, sizeof(CeedScalar), … in CeedSetDeviceCeedScalarArray_Cuda()
110 //------------------------------------------------------------------------------