![]() |
MaCh3 2.2.1
Reference Guide
|
#include "Fitters/gpuMCMCProcessorUtils.cuh"
Go to the source code of this file.
Functions | |
__host__ void | InitGPU_AutoCorr (float **ParStep_gpu, float **NumeratorSum_gpu, float **ParamSums_gpu, float **DenomSum_gpu, int n_Entries, int n_Pars, const int n_Lags) |
KS: Initialiser, here we allocate memory for variables and copy constants. | |
__host__ void | CopyToGPU_AutoCorr (float *ParStep_cpu, float *NumeratorSum_cpu, float *ParamSums_cpu, float *DenomSum_cpu, float *ParStep_gpu, float *NumeratorSum_gpu, float *ParamSums_gpu, float *DenomSum_gpu) |
KS: Copy necessary variables from CPU to GPU. | |
__global__ void | EvalOnGPU_AutoCorr (const float *__restrict__ ParStep_gpu, const float *__restrict__ ParamSums_gpu, float *NumeratorSum_gpu, float *DenomSum_gpu) |
Eval autocorrelations based on Box and Jenkins. | |
__host__ void | RunGPU_AutoCorr (float *ParStep_gpu, float *ParamSums_gpu, float *NumeratorSum_gpu, float *DenomSum_gpu, float *NumeratorSum_cpu, float *DenomSum_cpu) |
KS: This call the main kernel responsible for calculating LagL and later copy results back to CPU. | |
__host__ void | CleanupGPU_AutoCorr (float *ParStep_gpu, float *NumeratorSum_gpu, float *ParamSums_gpu, float *DenomSum_gpu) |
KS: free memory on gpu. | |
Variables | |
__device__ __constant__ int | d_nLag |
__device__ __constant__ int | d_nDraws |
__device__ __constant__ int | d_nEntries |
static int | h_nLag = -1 |
static int | h_nDraws = -1 |
static int | h_nEntries = -1 |
__host__ void CleanupGPU_AutoCorr | ( | float * | ParStep_gpu, |
float * | NumeratorSum_gpu, | ||
float * | ParamSums_gpu, | ||
float * | DenomSum_gpu | ||
) |
KS: free memory on gpu.
ParStep_gpu | Parameter value at each step |
NumeratorSum_gpu | Sum used for nominator of autocorrelation calculations |
ParamSums_gpu | Overall sum for each parameter over all steps |
DenomSum_gpu | Sum used for denominator of autocorrelation calculations |
Definition at line 197 of file gpuMCMCProcessorUtils.cu.
__host__ void CopyToGPU_AutoCorr | ( | float * | ParStep_cpu, |
float * | NumeratorSum_cpu, | ||
float * | ParamSums_cpu, | ||
float * | DenomSum_cpu, | ||
float * | ParStep_gpu, | ||
float * | NumeratorSum_gpu, | ||
float * | ParamSums_gpu, | ||
float * | DenomSum_gpu | ||
) |
KS: Copy necessary variables from CPU to GPU.
ParStep_cpu | Parameter value at each step |
NumeratorSum_cpu | Sum used for nominator of autocorrelation calculations |
ParamSums_cpu | Overall sum for each parameter over all steps |
DenomSum_cpu | Sum used for denominator of autocorrelation calculations |
ParStep_gpu | Parameter value at each step |
NumeratorSum_gpu | Sum used for nominator of autocorrelation calculations |
ParamSums_gpu | Overall sum for each parameter over all steps |
DenomSum_gpu | Sum used for denominator of autocorrelation calculations |
Definition at line 75 of file gpuMCMCProcessorUtils.cu.
__global__ void EvalOnGPU_AutoCorr | ( | const float *__restrict__ | ParStep_gpu, |
const float *__restrict__ | ParamSums_gpu, | ||
float * | NumeratorSum_gpu, | ||
float * | DenomSum_gpu | ||
) |
Eval autocorrelations based on Box and Jenkins.
ParStep_gpu | Parameter value at each step |
NumeratorSum_gpu | Sum used for nominator of autocorrelation calculations |
ParamSums_gpu | Overall sum for each parameter over all steps |
DenomSum_gpu | Sum used for denominator of autocorrelation calculations |
Definition at line 110 of file gpuMCMCProcessorUtils.cu.
__host__ void InitGPU_AutoCorr | ( | float ** | ParStep_gpu, |
float ** | NumeratorSum_gpu, | ||
float ** | ParamSums_gpu, | ||
float ** | DenomSum_gpu, | ||
int | n_Entries, | ||
int | n_Pars, | ||
const int | n_Lags | ||
) |
KS: Initialiser, here we allocate memory for variables and copy constants.
ParStep_gpu | Parameter value at each step |
NumeratorSum_gpu | Sum used for nominator of autocorrelation calculations |
ParamSums_gpu | Overall sum for each parameter over all steps |
DenomSum_gpu | Sum used for denominator of autocorrelation calculations |
n_Entries | Total number of entries in mcmc chain |
n_Pars | Number of relevant parameters |
n_Lags | Value of Lag in autocreation calculation |
Definition at line 23 of file gpuMCMCProcessorUtils.cu.
__host__ void RunGPU_AutoCorr | ( | float * | ParStep_gpu, |
float * | ParamSums_gpu, | ||
float * | NumeratorSum_gpu, | ||
float * | DenomSum_gpu, | ||
float * | NumeratorSum_cpu, | ||
float * | DenomSum_cpu | ||
) |
KS: This call the main kernel responsible for calculating LagL and later copy results back to CPU.
ParStep_gpu | Parameter value at each step |
NumeratorSum_gpu | Sum used for nominator of autocorrelation calculations |
ParamSums_gpu | Overall sum for each parameter over all steps |
DenomSum_gpu | Sum used for denominator of autocorrelation calculations |
NumeratorSum_cpu | Sum used for nominator of autocorrelation calculations |
DenomSum_cpu | Sum used for denominator of autocorrelation calculations |
Definition at line 160 of file gpuMCMCProcessorUtils.cu.
__device__ __constant__ int d_nDraws |
Definition at line 9 of file gpuMCMCProcessorUtils.cu.
__device__ __constant__ int d_nEntries |
Definition at line 10 of file gpuMCMCProcessorUtils.cu.
__device__ __constant__ int d_nLag |
Definition at line 8 of file gpuMCMCProcessorUtils.cu.
|
static |
Definition at line 14 of file gpuMCMCProcessorUtils.cu.
|
static |
Definition at line 15 of file gpuMCMCProcessorUtils.cu.
|
static |
Definition at line 13 of file gpuMCMCProcessorUtils.cu.