Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
RooBatchCompute.cu File Reference
#include "RooBatchCompute.h"
#include "Batches.h"
#include "CudaInterface.h"
#include <algorithm>
#include <cassert>
#include <functional>
#include <map>
#include <queue>
#include <vector>

Classes

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

Namespaces

namespace  RooBatchCompute
 Namespace for dispatching RooFit computations to various backends.
namespace  RooBatchCompute::CUDA

Functions

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

Variables

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