Public Member Functions | Public Attributes | List of all members
ML::ARIMAParams< DataT > Struct Template Reference

#include <arima_common.h>

Collaboration diagram for ML::ARIMAParams< DataT >:
Collaboration graph

Public Member Functions

void allocate (const ARIMAOrder &order, int batch_size, cudaStream_t stream, bool tr=false)
 
void deallocate (const ARIMAOrder &order, int batch_size, cudaStream_t stream, bool tr=false)
 
void pack (const ARIMAOrder &order, int batch_size, DataT *param_vec, cudaStream_t stream) const
 
void unpack (const ARIMAOrder &order, int batch_size, const DataT *param_vec, cudaStream_t stream)
 

Public Attributes

DataT * mu = nullptr
 
DataT * beta = nullptr
 
DataT * ar = nullptr
 
DataT * ma = nullptr
 
DataT * sar = nullptr
 
DataT * sma = nullptr
 
DataT * sigma2 = nullptr
 

Detailed Description

template<typename DataT>
struct ML::ARIMAParams< DataT >

Structure to hold the parameters (makes it easier to pass as an argument)

Note
: the qualifier const applied to this structure will only guarantee that the pointers are not changed, but the user can still modify the arrays when using the pointers directly!

Member Function Documentation

◆ allocate()

template<typename DataT >
void ML::ARIMAParams< DataT >::allocate ( const ARIMAOrder order,
int  batch_size,
cudaStream_t  stream,
bool  tr = false 
)
inline

Allocate all the parameter device arrays

Template Parameters
AllocatorTType of allocator used
Parameters
[in]orderARIMA order
[in]batch_sizeBatch size
[in]streamCUDA stream
[in]trWhether these are the transformed parameters

◆ deallocate()

template<typename DataT >
void ML::ARIMAParams< DataT >::deallocate ( const ARIMAOrder order,
int  batch_size,
cudaStream_t  stream,
bool  tr = false 
)
inline

Deallocate all the parameter device arrays

Template Parameters
AllocatorTType of allocator used
Parameters
[in]orderARIMA order
[in]batch_sizeBatch size
[in]streamCUDA stream
[in]trWhether these are the transformed parameters

◆ pack()

template<typename DataT >
void ML::ARIMAParams< DataT >::pack ( const ARIMAOrder order,
int  batch_size,
DataT *  param_vec,
cudaStream_t  stream 
) const
inline

Pack the separate parameter arrays into a unique parameter vector

Parameters
[in]orderARIMA order
[in]batch_sizeBatch size
[out]param_vecLinear array of all parameters grouped by batch [mu, ar, ma, sar, sma, sigma2] (device)
[in]streamCUDA stream

◆ unpack()

template<typename DataT >
void ML::ARIMAParams< DataT >::unpack ( const ARIMAOrder order,
int  batch_size,
const DataT *  param_vec,
cudaStream_t  stream 
)
inline

Unpack a parameter vector into separate arrays of parameters.

Parameters
[in]orderARIMA order
[in]batch_sizeBatch size
[in]param_vecLinear array of all parameters grouped by batch [mu, ar, ma, sar, sma, sigma2] (device)
[in]streamCUDA stream

Member Data Documentation

◆ ar

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::ar = nullptr

◆ beta

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::beta = nullptr

◆ ma

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::ma = nullptr

◆ mu

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::mu = nullptr

◆ sar

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::sar = nullptr

◆ sigma2

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::sigma2 = nullptr

◆ sma

template<typename DataT >
DataT* ML::ARIMAParams< DataT >::sma = nullptr

The documentation for this struct was generated from the following file: