Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooBatchCompute::CUDA Namespace Reference

Classes

class  RooBatchComputeClass
 This class overrides some RooBatchComputeInterface functions, for the purpose of providing a cuda specific implementation of the library. More...
 

Functions

std::vector< void(*)(Batches &)> getFunctions ()
 
__global__ void kahanSum (const double *__restrict__ input, const double *__restrict__ carries, size_t n, double *__restrict__ result, bool nll)
 
__device__ void kahanSumReduction (double *shared, size_t n, double *__restrict__ result, int carry_index)
 
__device__ void kahanSumUpdate (double &sum, double &carry, double a, double otherCarry)
 
__global__ void nllSumKernel (const double *__restrict__ probas, const double *__restrict__ weights, const double *__restrict__ offsetProbas, size_t n, double *__restrict__ result)
 

Variables

constexpr int blockSize = 512
 
static RooBatchComputeClass computeObj
 Static object to trigger the constructor which overwrites the dispatch pointer.
 

Function Documentation

◆ getFunctions()

std::vector< void(*)(Batches &)> RooBatchCompute::CUDA::getFunctions ( )

◆ kahanSum()

__global__ void RooBatchCompute::CUDA::kahanSum ( const double *__restrict__ input,
const double *__restrict__ carries,
size_t n,
double *__restrict__ result,
bool nll )

Definition at line 211 of file RooBatchCompute.cu.

◆ kahanSumReduction()

__device__ void RooBatchCompute::CUDA::kahanSumReduction ( double * shared,
size_t n,
double *__restrict__ result,
int carry_index )
inline

Definition at line 194 of file RooBatchCompute.cu.

◆ kahanSumUpdate()

__device__ void RooBatchCompute::CUDA::kahanSumUpdate ( double & sum,
double & carry,
double a,
double otherCarry )
inline

Definition at line 180 of file RooBatchCompute.cu.

◆ nllSumKernel()

__global__ void RooBatchCompute::CUDA::nllSumKernel ( const double *__restrict__ probas,
const double *__restrict__ weights,
const double *__restrict__ offsetProbas,
size_t n,
double *__restrict__ result )

Definition at line 241 of file RooBatchCompute.cu.

Variable Documentation

◆ blockSize

int RooBatchCompute::CUDA::blockSize = 512
constexpr

Definition at line 34 of file RooBatchCompute.cu.

◆ computeObj

RooBatchComputeClass RooBatchCompute::CUDA::computeObj
static

Static object to trigger the constructor which overwrites the dispatch pointer.

Definition at line 545 of file RooBatchCompute.cu.