DSPLIB User Guide
DSPLIB_svd_cn.cpp File Reference

Go to the source code of this file.

Macros

#define MAX_ITERATION_COUNT   30
 

Functions

DSPLIB_STATUS DSPLIB_svd_init_cn (DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn, const DSPLIB_bufParams2D_t *bufParamsU, const DSPLIB_bufParams2D_t *bufParamsV, const DSPLIB_bufParams1D_t *bufParamsDiag, const DSPLIB_bufParams1D_t *bufParamsSuperDiag, const DSPLIB_svdInitArgs *pKerInitArgs)
 This function is the initialization function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_svd_init. More...
 
template<typename dataType >
int DSPF_sp_convert_to_bidiag_cn (const int Nrows, const int Ncols, dataType *U, dataType *V, dataType *diag, dataType *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_convert_to_bidiag_cn< float > (const int Nrows, const int Ncols, float *U, float *V, float *diag, float *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_convert_to_bidiag_cn< double > (const int Nrows, const int Ncols, double *U, double *V, double *diag, double *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template<typename dataType >
int DSPF_sp_bidiag_to_diag_cn (const int Nrows, const int Ncols, dataType *U, dataType *V, dataType *diag, dataType *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_bidiag_to_diag_cn< float > (const int Nrows, const int Ncols, float *U, float *V, float *diag, float *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_bidiag_to_diag_cn< double > (const int Nrows, const int Ncols, double *U, double *V, double *diag, double *superdiag, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template<typename dataType >
int DSPF_sp_sort_singular_values_cn (const int Nrows, const int Ncols, dataType *U, dataType *V, dataType *singular_values, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_sort_singular_values_cn< float > (const int Nrows, const int Ncols, float *U, float *V, float *singular_values, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template int DSPF_sp_sort_singular_values_cn< double > (const int Nrows, const int Ncols, double *U, double *V, double *singular_values, const int colUStride, const int colVStride, uint32_t enableReducedForm)
 
template<typename dataType >
int DSPF_sp_svd_cn (DSPLIB_svd_PrivArgs *pKerPrivArgs, const int Nrows, const int Ncols, dataType *A, dataType *U, dataType *V, dataType *U1, dataType *V1, dataType *diag, dataType *superdiag, const int32_t strideIn, const int32_t strideU, const int32_t strideV, uint32_t enableReducedForm)
 
template int DSPF_sp_svd_cn< float > (DSPLIB_svd_PrivArgs *pKerPrivArgs, const int Nrows, const int Ncols, float *A, float *U, float *V, float *U1, float *V1, float *diag, float *superdiag, const int32_t strideIn, const int32_t strideU, const int32_t strideV, uint32_t enableReducedForm)
 
template int DSPF_sp_svd_cn< double > (DSPLIB_svd_PrivArgs *pKerPrivArgs, const int Nrows, const int Ncols, double *A, double *U, double *V, double *U1, double *V1, double *diag, double *superdiag, const int32_t strideIn, const int32_t strideU, const int32_t strideV, uint32_t enableReducedForm)
 
template<typename dataType >
DSPLIB_STATUS DSPLIB_svd_exec_cn (DSPLIB_kernelHandle handle, void *restrict pA, void *restrict pU, void *restrict pV, void *restrict pDiag, void *restrict pSuperDiag, void *restrict pU1, void *restrict pV1, void *restrict pScratch)
 This function is the main execution function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_svd_exec. More...
 
template DSPLIB_STATUS DSPLIB_svd_exec_cn< float > (DSPLIB_kernelHandle handle, void *restrict pA, void *restrict pU, void *restrict pV, void *restrict pDiag, void *restrict pSuperDiag, void *restrict pU1, void *restrict pV1, void *restrict pScratch)
 
template DSPLIB_STATUS DSPLIB_svd_exec_cn< double > (DSPLIB_kernelHandle handle, void *restrict pA, void *restrict pU, void *restrict pV, void *restrict pDiag, void *restrict pSuperDiag, void *restrict pU1, void *restrict pV1, void *restrict pScratch)
 

Macro Definition Documentation

◆ MAX_ITERATION_COUNT

#define MAX_ITERATION_COUNT   30

Definition at line 54 of file DSPLIB_svd_cn.cpp.

Function Documentation

◆ DSPLIB_svd_init_cn()

DSPLIB_STATUS DSPLIB_svd_init_cn ( DSPLIB_kernelHandle  handle,
const DSPLIB_bufParams2D_t bufParamsIn,
const DSPLIB_bufParams2D_t bufParamsU,
const DSPLIB_bufParams2D_t bufParamsV,
const DSPLIB_bufParams1D_t bufParamsDiag,
const DSPLIB_bufParams1D_t bufParamsSuperDiag,
const DSPLIB_svdInitArgs pKerInitArgs 
)

This function is the initialization function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_svd_init.

Parameters
[in]handle: Active handle to the kernel
[in]bufParamsIn: Pointer to the structure containing dimensional information of input buffer
[out]bufParamsU: Pointer to the structure containing dimensional information of output buffer U
[out]bufParamsV: Pointer to the structure containing dimensional information of output buffer V
[out]bufParamsDiag: Pointer to the structure containing dimensional information of output buffer Diag
[out]bufParamsSuperDiag: Pointer to the structure containing dimensional information of output buffer SuperDiag
[in]pKerInitArgs: Pointer to the structure holding init parameters
Returns
Status value indicating success or failure. Refer to DSPLIB_STATUS.

Definition at line 62 of file DSPLIB_svd_cn.cpp.

◆ DSPF_sp_convert_to_bidiag_cn()

template<typename dataType >
int DSPF_sp_convert_to_bidiag_cn ( const int  Nrows,
const int  Ncols,
dataType *  U,
dataType *  V,
dataType *  diag,
dataType *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

Definition at line 82 of file DSPLIB_svd_cn.cpp.

◆ DSPF_sp_convert_to_bidiag_cn< float >()

template int DSPF_sp_convert_to_bidiag_cn< float > ( const int  Nrows,
const int  Ncols,
float *  U,
float *  V,
float *  diag,
float *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_convert_to_bidiag_cn< double >()

template int DSPF_sp_convert_to_bidiag_cn< double > ( const int  Nrows,
const int  Ncols,
double *  U,
double *  V,
double *  diag,
double *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_bidiag_to_diag_cn()

template<typename dataType >
int DSPF_sp_bidiag_to_diag_cn ( const int  Nrows,
const int  Ncols,
dataType *  U,
dataType *  V,
dataType *  diag,
dataType *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

Definition at line 338 of file DSPLIB_svd_cn.cpp.

◆ DSPF_sp_bidiag_to_diag_cn< float >()

template int DSPF_sp_bidiag_to_diag_cn< float > ( const int  Nrows,
const int  Ncols,
float *  U,
float *  V,
float *  diag,
float *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_bidiag_to_diag_cn< double >()

template int DSPF_sp_bidiag_to_diag_cn< double > ( const int  Nrows,
const int  Ncols,
double *  U,
double *  V,
double *  diag,
double *  superdiag,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_sort_singular_values_cn()

template<typename dataType >
int DSPF_sp_sort_singular_values_cn ( const int  Nrows,
const int  Ncols,
dataType *  U,
dataType *  V,
dataType *  singular_values,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

Definition at line 561 of file DSPLIB_svd_cn.cpp.

◆ DSPF_sp_sort_singular_values_cn< float >()

template int DSPF_sp_sort_singular_values_cn< float > ( const int  Nrows,
const int  Ncols,
float *  U,
float *  V,
float *  singular_values,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_sort_singular_values_cn< double >()

template int DSPF_sp_sort_singular_values_cn< double > ( const int  Nrows,
const int  Ncols,
double *  U,
double *  V,
double *  singular_values,
const int  colUStride,
const int  colVStride,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_svd_cn()

template<typename dataType >
int DSPF_sp_svd_cn ( DSPLIB_svd_PrivArgs pKerPrivArgs,
const int  Nrows,
const int  Ncols,
dataType *  A,
dataType *  U,
dataType *  V,
dataType *  U1,
dataType *  V1,
dataType *  diag,
dataType *  superdiag,
const int32_t  strideIn,
const int32_t  strideU,
const int32_t  strideV,
uint32_t  enableReducedForm 
)

Definition at line 626 of file DSPLIB_svd_cn.cpp.

◆ DSPF_sp_svd_cn< float >()

template int DSPF_sp_svd_cn< float > ( DSPLIB_svd_PrivArgs pKerPrivArgs,
const int  Nrows,
const int  Ncols,
float *  A,
float *  U,
float *  V,
float *  U1,
float *  V1,
float *  diag,
float *  superdiag,
const int32_t  strideIn,
const int32_t  strideU,
const int32_t  strideV,
uint32_t  enableReducedForm 
)

◆ DSPF_sp_svd_cn< double >()

template int DSPF_sp_svd_cn< double > ( DSPLIB_svd_PrivArgs pKerPrivArgs,
const int  Nrows,
const int  Ncols,
double *  A,
double *  U,
double *  V,
double *  U1,
double *  V1,
double *  diag,
double *  superdiag,
const int32_t  strideIn,
const int32_t  strideU,
const int32_t  strideV,
uint32_t  enableReducedForm 
)

◆ DSPLIB_svd_exec_cn()

template<typename dataType >
DSPLIB_STATUS DSPLIB_svd_exec_cn ( DSPLIB_kernelHandle  handle,
void *restrict  pA,
void *restrict  pU,
void *restrict  pV,
void *restrict  pDiag,
void *restrict  pSuperDiag,
void *restrict  pU1,
void *restrict  pV1,
void *restrict  pScratch 
)

This function is the main execution function for the natural C implementation of the kernel. The function declaration conforms to the declaration of DSPLIB_svd_exec.

Parameters
[in]handle: Active handle to the kernel
[in]pA: Pointer to the input buffer pA
[out]pU: Pointer to the output buffer pU
[out]pV: Pointer to the output buffer pV
[out]pDiag: Pointer to the output buffer pDiag
[out]pSuperDiag: Pointer to the output buffer pSuperDiag
[in]pU1: Pointer to the buffer pU1
[in]pV1: Pointer to the buffer pV1
[out]pScratch: Pointer to the buffer pScratch
Returns
Status value indicating success or failure. Refer to DSPLIB_STATUS.

Definition at line 746 of file DSPLIB_svd_cn.cpp.

◆ DSPLIB_svd_exec_cn< float >()

template DSPLIB_STATUS DSPLIB_svd_exec_cn< float > ( DSPLIB_kernelHandle  handle,
void *restrict  pA,
void *restrict  pU,
void *restrict  pV,
void *restrict  pDiag,
void *restrict  pSuperDiag,
void *restrict  pU1,
void *restrict  pV1,
void *restrict  pScratch 
)

◆ DSPLIB_svd_exec_cn< double >()

template DSPLIB_STATUS DSPLIB_svd_exec_cn< double > ( DSPLIB_kernelHandle  handle,
void *restrict  pA,
void *restrict  pU,
void *restrict  pV,
void *restrict  pDiag,
void *restrict  pSuperDiag,
void *restrict  pU1,
void *restrict  pV1,
void *restrict  pScratch 
)