OmniSciDB  dfae7c3b14
NvidiaKernel.h File Reference
#include "CudaMgr/CudaMgr.h"
#include "QueryEngine/CompilationContext.h"
#include "../Shared/nocuda.h"
#include <string>
#include <vector>
+ Include dependency graph for NvidiaKernel.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CubinResult
 
class  GpuDeviceCompilationContext
 
class  GpuCompilationContext
 

Macros

#define checkCudaErrors(err)   CHECK_EQ(err, CUDA_SUCCESS)
 

Functions

void nvidia_jit_warmup ()
 
CubinResult ptx_to_cubin (const std::string &ptx, const unsigned block_size, const CudaMgr_Namespace::CudaMgr *cuda_mgr)
 

Macro Definition Documentation

◆ checkCudaErrors

#define checkCudaErrors (   err)    CHECK_EQ(err, CUDA_SUCCESS)

Definition at line 101 of file NvidiaKernel.h.

Function Documentation

◆ nvidia_jit_warmup()

void nvidia_jit_warmup ( )

Loads the fatbin from disk which populates the nvcache. The fatbin load can take several seconds, so we warmup the GPU JIT at server startup.

Referenced by CudaMgr_Namespace::CudaMgr::CudaMgr().

+ Here is the caller graph for this function:

◆ ptx_to_cubin()

CubinResult ptx_to_cubin ( const std::string &  ptx,
const unsigned  block_size,
const CudaMgr_Namespace::CudaMgr cuda_mgr 
)

Compile and link PTX from the LLVM NVPTX backend with the CUDA runtime module and device linker to create executable GPU device code.

Referenced by CodeGenerator::generateNativeGPUCode().

+ Here is the caller graph for this function: