1#ifndef PROTEUS_CORE_CUDA_HPP
2#define PROTEUS_CORE_CUDA_HPP
7#include <llvm/ADT/StringRef.h>
9#include <unordered_map>
16 assert(
DevPtr &&
"Expected non-null device pointer for global");
30 const std::unordered_map<std::string, GlobalVarInfo> &VarNameToGlobalInfo) {
35 if (RelinkGlobalsByCopy) {
39 " without a concrete device address");
void char * KernelName
Definition CompilerInterfaceDevice.cpp:52
#define proteusCudaErrCheck(CALL)
Definition UtilsCUDA.h:18
#define proteusCuErrCheck(CALL)
Definition UtilsCUDA.h:28
Definition ObjectCacheChain.cpp:26
void reportFatalError(const llvm::Twine &Reason, const char *FILE, unsigned Line)
Definition Error.cpp:14
cudaError_t launchKernelDirect(void *KernelFunc, dim3 GridDim, dim3 BlockDim, void **KernelArgs, uint64_t ShmemSize, CUstream Stream)
Definition CoreDeviceCUDA.hpp:21
T getRuntimeConstantValue(void *Arg)
Definition CompilerInterfaceRuntimeConstantInfo.h:113
cudaError_t launchKernelFunction(CUfunction KernelFunc, dim3 GridDim, dim3 BlockDim, void **KernelArgs, uint64_t ShmemSize, CUstream Stream)
Definition CoreDeviceCUDA.hpp:56
void * resolveDeviceGlobalAddr(const void *Addr)
Definition CoreDeviceCUDA.hpp:13
CUfunction getKernelFunctionFromImage(StringRef KernelName, const void *Image, bool RelinkGlobalsByCopy, const std::unordered_map< std::string, GlobalVarInfo > &VarNameToGlobalInfo)
Definition CoreDeviceCUDA.hpp:28