cuPHY
0.1
CUDA PHY Layer Acceration Library
|
This section describes application programming interface for computing codeword types (rate-0, rate-1, neither) for codewords within a polar codeword tree. More...
Data Structures | |
struct | cuphyCompCwTreeTypes_t |
Typedefs | |
typedef struct cuphyCompCwTreeTypes * | cuphyCompCwTreeTypesHndl_t |
Functions | |
cuphyStatus_t | cuphyCompCwTreeTypesGetDescrInfo (size_t *pDynDescrSizeBytes, size_t *pDynDescrAlignBytes) |
Helper to compute compCwTreeTypes descriptor buffer sizes and alignments. More... | |
cuphyStatus_t | cuphyCreateCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t *pCompCwTreeTypes) |
Allocate and initialize a cuPHY compCwTreeTypes object. More... | |
cuphyStatus_t | cuphyDestroyCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t compCwTreeTypesHndl) |
Destroys a cuPHY compCwTreeTypes object. More... | |
cuphyStatus_t | cuphySetupCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t compCwTreeTypesHndl, uint16_t nPolUciSegs, const cuphyPolarUciSegPrm_t *pPolUciSegPrmsCpu, const cuphyPolarUciSegPrm_t *pPolUciSegPrmsGpu, uint8_t **pCwTreeTypesAddrs, void *pCpuDynDescCompTree, void *pGpuDynDescCompTree, void *pCpuDynDescCompTreeAddrs, uint8_t enableCpuToGpuDescrAsyncCpy, cuphyCompCwTreeTypesLaunchCfg_t *pLaunchCfg, cudaStream_t strm) |
Setup cuPHY compCwTreeTypes for slot processing. More... | |
typedef struct cuphyCompCwTreeTypes* cuphyCompCwTreeTypesHndl_t |
cuPHY compCwTreeTypes handle
cuphyStatus_t cuphyCompCwTreeTypesGetDescrInfo | ( | size_t * | pDynDescrSizeBytes, |
size_t * | pDynDescrAlignBytes | ||
) |
Computes compCwTreeTypes descriptor buffer sizes and alignments. To be used by the caller to allocate these buffers (in CPU and GPU memories) and provide them to other compCwTreeTypes APIs
Returns CUPHY_STATUS_INVALID_ARGUMENT if pDynDescrSizeBytes
and/or pDynDescrAlignBytes
is NULL
Returns CUPHY_STATUS_SUCCESS if allocation and initialization were successful.
pDynDescrSizeBytes | - Size in bytes of dynamic descriptor |
pDynDescrAlignBytes | - Alignment in bytes of dynamic descriptor |
cuphyStatus_t cuphyCreateCompCwTreeTypes | ( | cuphyCompCwTreeTypesHndl_t * | pCompCwTreeTypes | ) |
Allocates a compCwTreeTypes object and returns a handle in the address provided by the caller.
Returns CUPHY_STATUS_INVALID_ARGUMENT if pCompCwTreeTypes
is NULL.
Returns CUPHY_STATUS_ALLOC_FAILED if a compCwTreeTypes object cannot be allocated
Returns CUPHY_STATUS_SUCCESS if allocation and initialization were successful
pCompCwTreeTypes | - Address to return the new compCwTreeTypes instance |
cuphyStatus_t,cuphyGetErrorName,cuphyGetErrorString,cuphyPucchF0RxGetDescrInfo,cuphySetupPucchF0Rx
cuphyStatus_t cuphyDestroyCompCwTreeTypes | ( | cuphyCompCwTreeTypesHndl_t | compCwTreeTypesHndl | ) |
Destroys a cuPHY compCwTreeTypes object that was previously created by cuphyCreateCompCwTreeTypes. The handle provided to this function should not be used for any operations after this function returns.
Returns CUPHY_STATUS_INVALID_ARGUMENT if compCwTreeTypesHndl
is NULL.
Returns CUPHY_STATUS_SUCCESS if destruction was successful.
compCwTreeTypesHndl | - handle to previously allocated compCwTreeTypes instance |
cuphyStatus_t cuphySetupCompCwTreeTypes | ( | cuphyCompCwTreeTypesHndl_t | compCwTreeTypesHndl, |
uint16_t | nPolUciSegs, | ||
const cuphyPolarUciSegPrm_t * | pPolUciSegPrmsCpu, | ||
const cuphyPolarUciSegPrm_t * | pPolUciSegPrmsGpu, | ||
uint8_t ** | pCwTreeTypesAddrs, | ||
void * | pCpuDynDescCompTree, | ||
void * | pGpuDynDescCompTree, | ||
void * | pCpuDynDescCompTreeAddrs, | ||
uint8_t | enableCpuToGpuDescrAsyncCpy, | ||
cuphyCompCwTreeTypesLaunchCfg_t * | pLaunchCfg, | ||
cudaStream_t | strm | ||
) |
Setup cuPHY compCwTreeTypes in preparation towards slot execution
Returns CUPHY_STATUS_SUCCESS if setup is successful.
Returns CUPHY_STATUS_INVALID_ARGUMENT if compCwTreeTypesHndl
and/or pPolUciSegPrmsCpu
and/or pPolUciSegPrmsGpu
and/or pCpuDynDescCompTree
and/or pGpuDynDescCompTree
and/or pLaunchCfg
is NULL.
compCwTreeTypesHndl | - Handle to previously created compCwTreeTypes instance |
nPolUciSegs | - number of polar UCI segments |
pPolUciSegPrmsCpu | - starting address of polar UCI segment parameters (CPU) |
pPolUciSegPrmsGpu | - starting address of polar UCI segment parameters (GPU) |
pCwTreeTypesAddrs | - pointer to cwTreeTypes addresses |
pCpuDynDescCompTree | - pointer to compTree descriptor in cpu |
pGpuDynDescCompTree | - pointer to comptTree descriptor in gpu |
pCpuDynDescCompTreeAddrs | - pointer to compTreeAddrs descriptor in cpu |
enableCpuToGpuDescrAsyncCpy | - option to copy cpu descriptors from cpu to gpu |
pLaunchCfg | - pointer to rate matching launch configuration |
strm | - stream to perform copy |