DSPLIB User Guide
DSPLIB_cholesky_solver_priv.h
Go to the documentation of this file.
1 /******************************************************************************
2  * *
3  * module name :DSPLIB *
4  * *
5  * module descripton :Digital Signal Processing Library module for C7x+MMA *
6  * *
7  * Copyright (C) 2017-2018 Texas Instruments Incorporated - https://www.ti.com/ *
8  * ALL RIGHTS RESERVED *
9  * *
10  ******************************************************************************/
11 
12 /********************************************************************************
13  * @file DSPLIB_cholesky_solver_priv.h
14  *
15  * @brief File to hold private parameter of function DSPLIB_cholesky
16  *
17  * @version 0.1 - Mar 2022 : Initial Version
18  *
19  ********************************************************************************/
20 
21 #ifndef DSPLIB_CHOLESKY_SOLVER_IXX_IXX_OXX_PRIV_H_
22 #define DSPLIB_CHOLESKY_SOLVER_IXX_IXX_OXX_PRIV_H_
23 
24 // #include "../../common/DSPLIB_utility.h"
25 #include "../common/DSPLIB_utility.h"
26 #include "DSPLIB_cholesky_solver.h"
27 #include "../DSPLIB_matTrans/DSPLIB_matTrans_priv.h"
40 #define DSPLIB_CHOLESKY_SOLVER_IXX_IXX_OXX_PBLOCK_SIZE (7 * SE_PARAM_SIZE)
41 
48  void *restrict pU,
49  void *restrict pScratch,
50  void *restrict pY,
51  void *restrict pB,
52  void *restrict pX,
53  void *restrict pDiv);
54 
89 template <typename dataType>
91  DSPLIB_bufParams2D_t *bufParamsU,
92  DSPLIB_bufParams2D_t *bufParamsScratch,
93  DSPLIB_bufParams1D_t *bufParamsY,
94  DSPLIB_bufParams1D_t *bufParamsB,
95  DSPLIB_bufParams1D_t *bufParamsX,
96  DSPLIB_bufParams1D_t *bufParamsDiv,
97  const DSPLIB_cholesky_solver_InitArgs *pKerInitArgs);
98 
124 template <typename dataType>
126  void *restrict pU,
127  void *restrict pScratch,
128  void *restrict pY,
129  void *restrict pB,
130  void *restrict pX,
131  void *restrict pDiv);
132 
152 template <typename dataType>
154  void *restrict pU,
155  void *restrict pScratch,
156  void *restrict pY,
157  void *restrict pB,
158  void *restrict pX,
159  void *restrict pDiv);
160 
164 typedef struct {
172  int32_t order; // Order of input A
173  int32_t stride; // stride to go from one row to the other
174  int32_t strideCn; // stride to go from one row to other in natural implementation
179 
180 
181 #endif /* DSPLIB_CHOLESKY_SOLVER_IXX_IXX_OXX_PRIV_H_ */
182 
183 /* ======================================================================== */
184 /* End of file: DSPLIB_cholesky_solver_priv.h */
185 /* ======================================================================== */
DSPLIB_STATUS DSPLIB_cholesky_solver_exec_cn(DSPLIB_kernelHandle handle, void *restrict pU, void *restrict pScratch, void *restrict pY, void *restrict pB, void *restrict pX, void *restrict pDiv)
This function is the main execution function for the natural C implementation of the kernel....
DSPLIB_STATUS(* pFxnDSPLIB_cholesky_solver_exec)(DSPLIB_kernelHandle handle, void *restrict pU, void *restrict pScratch, void *restrict pY, void *restrict pB, void *restrict pX, void *restrict pDiv)
This is a function pointer type that conforms to the declaration of DSPLIB_cholesky_solver_exec_ci an...
#define DSPLIB_CHOLESKY_SOLVER_IXX_IXX_OXX_PBLOCK_SIZE
Macro to define the size of bufPblock array of DSPLIB_cholesky_solver_PrivArgs structure.
DSPLIB_STATUS DSPLIB_cholesky_solver_exec_ci(DSPLIB_kernelHandle handle, void *restrict pU, void *restrict pScratch, void *restrict pY, void *restrict pB, void *restrict pX, void *restrict pDiv)
This function is the main execution function for the C7x implementation of the kernel....
DSPLIB_STATUS DSPLIB_cholesky_solver_init_ci(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsU, DSPLIB_bufParams2D_t *bufParamsScratch, DSPLIB_bufParams1D_t *bufParamsY, DSPLIB_bufParams1D_t *bufParamsB, DSPLIB_bufParams1D_t *bufParamsX, DSPLIB_bufParams1D_t *bufParamsDiv, const DSPLIB_cholesky_solver_InitArgs *pKerInitArgs)
This function is the initialization function for the C7x implementation of the kernel....
DSPLIB_STATUS_NAME DSPLIB_STATUS
Return value for DSPLIB functions.
Definition: DSPLIB_types.h:170
DSPLIB_STATUS_NAME
The enumeration of all status codes.
Definition: DSPLIB_types.h:151
void * DSPLIB_kernelHandle
Handle type for DSPLIB operations.
Definition: DSPLIB_types.h:172
A structure for a 1 dimensional buffer descriptor.
A structure for a 2 dimensional buffer descriptor.
Structure containing the parameters to initialize the kernel.
Structure that is reserved for internal use by the kernel.
int32_t order
Order of input buffer for different batches DSPLIB_cholesky_solver_init that will be retrieved and us...
pFxnDSPLIB_cholesky_solver_exec execute
Function pointer to point to the right execution variant between DSPLIB_cholesky_solver_exec_cn and D...
DSPLIB_matTrans_PrivArgs matTransPrivArgs
Struture to store privArgs for matTrans kernel.
Structure that is reserved for internal use by the kernel.