Lines Matching refs:impl

23   CeedQFunctionContext_Cuda *impl;  in CeedQFunctionContextSyncH2D_Cuda()  local
26 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextSyncH2D_Cuda()
28 CeedCheck(impl->h_data, ceed, CEED_ERROR_BACKEND, "No valid host data to sync to device"); in CeedQFunctionContextSyncH2D_Cuda()
31 if (impl->d_data_borrowed) { in CeedQFunctionContextSyncH2D_Cuda()
32 impl->d_data = impl->d_data_borrowed; in CeedQFunctionContextSyncH2D_Cuda()
33 } else if (impl->d_data_owned) { in CeedQFunctionContextSyncH2D_Cuda()
34 impl->d_data = impl->d_data_owned; in CeedQFunctionContextSyncH2D_Cuda()
36 CeedCallCuda(ceed, cudaMalloc((void **)&impl->d_data_owned, ctx_size)); in CeedQFunctionContextSyncH2D_Cuda()
37 impl->d_data = impl->d_data_owned; in CeedQFunctionContextSyncH2D_Cuda()
39 CeedCallCuda(ceed, cudaMemcpy(impl->d_data, impl->h_data, ctx_size, cudaMemcpyHostToDevice)); in CeedQFunctionContextSyncH2D_Cuda()
50 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextSyncD2H_Cuda() local
53 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextSyncD2H_Cuda()
55 CeedCheck(impl->d_data, ceed, CEED_ERROR_BACKEND, "No valid device data to sync to host"); in CeedQFunctionContextSyncD2H_Cuda()
59 if (impl->h_data_borrowed) { in CeedQFunctionContextSyncD2H_Cuda()
60 impl->h_data = impl->h_data_borrowed; in CeedQFunctionContextSyncD2H_Cuda()
61 } else if (impl->h_data_owned) { in CeedQFunctionContextSyncD2H_Cuda()
62 impl->h_data = impl->h_data_owned; in CeedQFunctionContextSyncD2H_Cuda()
64 CeedCallBackend(CeedMallocArray(1, ctx_size, &impl->h_data_owned)); in CeedQFunctionContextSyncD2H_Cuda()
65 impl->h_data = impl->h_data_owned; in CeedQFunctionContextSyncD2H_Cuda()
67 CeedCallCuda(ceed, cudaMemcpy(impl->h_data, impl->d_data, ctx_size, cudaMemcpyDeviceToHost)); in CeedQFunctionContextSyncD2H_Cuda()
89 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextSetAllInvalid_Cuda() local
91 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextSetAllInvalid_Cuda()
92 impl->h_data = NULL; in CeedQFunctionContextSetAllInvalid_Cuda()
93 impl->d_data = NULL; in CeedQFunctionContextSetAllInvalid_Cuda()
101 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextHasValidData_Cuda() local
103 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextHasValidData_Cuda()
104 *has_valid_data = impl && (impl->h_data || impl->d_data); in CeedQFunctionContextHasValidData_Cuda()
113 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextHasBorrowedDataOfType_Cuda() local
115 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextHasBorrowedDataOfType_Cuda()
118 *has_borrowed_data_of_type = impl->h_data_borrowed; in CeedQFunctionContextHasBorrowedDataOfType_Cuda()
121 *has_borrowed_data_of_type = impl->d_data_borrowed; in CeedQFunctionContextHasBorrowedDataOfType_Cuda()
132 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextNeedSync_Cuda() local
134 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextNeedSync_Cuda()
138 *need_sync = has_valid_data && !impl->h_data; in CeedQFunctionContextNeedSync_Cuda()
141 *need_sync = has_valid_data && !impl->d_data; in CeedQFunctionContextNeedSync_Cuda()
151 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextSetDataHost_Cuda() local
153 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextSetDataHost_Cuda()
155 CeedCallBackend(CeedFree(&impl->h_data_owned)); in CeedQFunctionContextSetDataHost_Cuda()
160 CeedCallBackend(CeedMallocArray(1, ctx_size, &impl->h_data_owned)); in CeedQFunctionContextSetDataHost_Cuda()
161 impl->h_data_borrowed = NULL; in CeedQFunctionContextSetDataHost_Cuda()
162 impl->h_data = impl->h_data_owned; in CeedQFunctionContextSetDataHost_Cuda()
163 memcpy(impl->h_data, data, ctx_size); in CeedQFunctionContextSetDataHost_Cuda()
166 impl->h_data_owned = data; in CeedQFunctionContextSetDataHost_Cuda()
167 impl->h_data_borrowed = NULL; in CeedQFunctionContextSetDataHost_Cuda()
168 impl->h_data = data; in CeedQFunctionContextSetDataHost_Cuda()
171 impl->h_data_borrowed = data; in CeedQFunctionContextSetDataHost_Cuda()
172 impl->h_data = data; in CeedQFunctionContextSetDataHost_Cuda()
183 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextSetDataDevice_Cuda() local
186 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextSetDataDevice_Cuda()
188 CeedCallCuda(ceed, cudaFree(impl->d_data_owned)); in CeedQFunctionContextSetDataDevice_Cuda()
189 impl->d_data_owned = NULL; in CeedQFunctionContextSetDataDevice_Cuda()
194 CeedCallCuda(ceed, cudaMalloc((void **)&impl->d_data_owned, ctx_size)); in CeedQFunctionContextSetDataDevice_Cuda()
195 impl->d_data_borrowed = NULL; in CeedQFunctionContextSetDataDevice_Cuda()
196 impl->d_data = impl->d_data_owned; in CeedQFunctionContextSetDataDevice_Cuda()
197 CeedCallCuda(ceed, cudaMemcpy(impl->d_data, data, ctx_size, cudaMemcpyDeviceToDevice)); in CeedQFunctionContextSetDataDevice_Cuda()
200 impl->d_data_owned = data; in CeedQFunctionContextSetDataDevice_Cuda()
201 impl->d_data_borrowed = NULL; in CeedQFunctionContextSetDataDevice_Cuda()
202 impl->d_data = data; in CeedQFunctionContextSetDataDevice_Cuda()
205 impl->d_data_owned = NULL; in CeedQFunctionContextSetDataDevice_Cuda()
206 impl->d_data_borrowed = data; in CeedQFunctionContextSetDataDevice_Cuda()
207 impl->d_data = data; in CeedQFunctionContextSetDataDevice_Cuda()
233 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextTakeData_Cuda() local
235 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextTakeData_Cuda()
245 *(void **)data = impl->h_data_borrowed; in CeedQFunctionContextTakeData_Cuda()
246 impl->h_data_borrowed = NULL; in CeedQFunctionContextTakeData_Cuda()
247 impl->h_data = NULL; in CeedQFunctionContextTakeData_Cuda()
250 *(void **)data = impl->d_data_borrowed; in CeedQFunctionContextTakeData_Cuda()
251 impl->d_data_borrowed = NULL; in CeedQFunctionContextTakeData_Cuda()
252 impl->d_data = NULL; in CeedQFunctionContextTakeData_Cuda()
264 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextGetDataCore_Cuda() local
266 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextGetDataCore_Cuda()
275 *(void **)data = impl->h_data; in CeedQFunctionContextGetDataCore_Cuda()
278 *(void **)data = impl->d_data; in CeedQFunctionContextGetDataCore_Cuda()
295 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextGetData_Cuda() local
297 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextGetData_Cuda()
304 impl->h_data = *(void **)data; in CeedQFunctionContextGetData_Cuda()
307 impl->d_data = *(void **)data; in CeedQFunctionContextGetData_Cuda()
317 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextDestroy_Cuda() local
319 CeedCallBackend(CeedQFunctionContextGetBackendData(ctx, &impl)); in CeedQFunctionContextDestroy_Cuda()
320 CeedCallCuda(CeedQFunctionContextReturnCeed(ctx), cudaFree(impl->d_data_owned)); in CeedQFunctionContextDestroy_Cuda()
321 CeedCallBackend(CeedFree(&impl->h_data_owned)); in CeedQFunctionContextDestroy_Cuda()
322 CeedCallBackend(CeedFree(&impl)); in CeedQFunctionContextDestroy_Cuda()
330 CeedQFunctionContext_Cuda *impl; in CeedQFunctionContextCreate_Cuda() local
342 CeedCallBackend(CeedCalloc(1, &impl)); in CeedQFunctionContextCreate_Cuda()
343 CeedCallBackend(CeedQFunctionContextSetBackendData(ctx, impl)); in CeedQFunctionContextCreate_Cuda()