cuPHY
0.1
CUDA PHY Layer Acceration Library
|
This section describes the PUSCH noise-interference estimation functions of the cuPHY application programming interface. More...
Data Structures | |
struct | cuphyPuschRxNoiseIntfEstLaunchCfg_t |
Typedefs | |
typedef struct cuphyPuschRxNoiseIntfEst * | cuphyPuschRxNoiseIntfEstHndl_t |
Functions | |
cuphyStatus_t | cuphyCreatePuschRxNoiseIntfEst (cuphyPuschRxNoiseIntfEstHndl_t *pPuschRxNoiseIntfEstHndl) |
Allocate and initialize a cuPHY PuschRx noise-interference estimation object. More... | |
cuphyStatus_t | cuphyDestroyPuschRxNoiseIntfEst (cuphyPuschRxNoiseIntfEstHndl_t puschRxNoiseIntfEstHndl) |
Destroys a cuPHY PUSCH noise-interference estimation object. More... | |
cuphyStatus_t | cuphyPuschRxNoiseIntfEstGetDescrInfo (size_t *pDynDescrSizeBytes, size_t *pDynDescrAlignBytes) |
Helper to compute cuPHY PUSCH noise-interference estimation descriptor buffer sizes and alignments. More... | |
cuphyStatus_t | cuphySetupPuschRxNoiseIntfEst (cuphyPuschRxNoiseIntfEstHndl_t puschRxNoiseIntfEstHndl, cuphyPuschRxUeGrpPrms_t *pDrvdUeGrpPrmsCpu, cuphyPuschRxUeGrpPrms_t *pDrvdUeGrpPrmsGpu, uint16_t nUeGrps, uint16_t nMaxPrb, uint8_t enableCpuToGpuDescrAsyncCpy, void *pDynDescrsCpu, void *pDynDescrsGpu, cuphyPuschRxNoiseIntfEstLaunchCfgs_t *pLaunchCfgs, cudaStream_t strm) |
Setup cuPHY noise-interference estimation for slot processing. More... | |
typedef struct cuphyPuschRxNoiseIntfEst* cuphyPuschRxNoiseIntfEstHndl_t |
cuPHY PUSCH Receiver noise-interference estimation handle
cuphyStatus_t cuphyCreatePuschRxNoiseIntfEst | ( | cuphyPuschRxNoiseIntfEstHndl_t * | pPuschRxNoiseIntfEstHndl | ) |
Allocates a cuPHY PUSCH noise-interference estimation object and returns a handle in the address provided by the caller.
Returns CUPHY_STATUS_INVALID_ARGUMENT if pPuschRxNoiseIntfEstHndl
is NULL.
Returns CUPHY_STATUS_ALLOC_FAILED if a PuschRxNoiseIntfEst object cannot be allocated
Returns CUPHY_STATUS_SUCCESS if allocation and initialization were successful
pPuschRxNoiseIntfEstHndl | - Address to return the new PuschRxNoiseIntfEst instance |
cuphyStatus_t cuphyDestroyPuschRxNoiseIntfEst | ( | cuphyPuschRxNoiseIntfEstHndl_t | puschRxNoiseIntfEstHndl | ) |
Destroys a cuPHY PUSCH noise-interference estimation object that was previously created by cuphyCreatePuschRxNoiseIntfEst. The handle provided to this function should not be used for any operations after this function returns.
Returns CUPHY_STATUS_INVALID_ARGUMENT if puschRxNoiseIntfEstHndl
is NULL.
Returns CUPHY_STATUS_SUCCESS if destruction was successful.
puschRxNoiseIntfEstHndl | - handle to previously allocated PuschRxNoiseIntfEst instance |
cuphyStatus_t cuphyPuschRxNoiseIntfEstGetDescrInfo | ( | size_t * | pDynDescrSizeBytes, |
size_t * | pDynDescrAlignBytes | ||
) |
Computes cuPHY PUSCH noise-interference estimation 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 PuschRxNoiseIntfEst 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 cuphySetupPuschRxNoiseIntfEst | ( | cuphyPuschRxNoiseIntfEstHndl_t | puschRxNoiseIntfEstHndl, |
cuphyPuschRxUeGrpPrms_t * | pDrvdUeGrpPrmsCpu, | ||
cuphyPuschRxUeGrpPrms_t * | pDrvdUeGrpPrmsGpu, | ||
uint16_t | nUeGrps, | ||
uint16_t | nMaxPrb, | ||
uint8_t | enableCpuToGpuDescrAsyncCpy, | ||
void * | pDynDescrsCpu, | ||
void * | pDynDescrsGpu, | ||
cuphyPuschRxNoiseIntfEstLaunchCfgs_t * | pLaunchCfgs, | ||
cudaStream_t | strm | ||
) |
Setup cuPHY PUSCH noise-interference estimation in preparation towards slot execution
Returns CUPHY_STATUS_SUCCESS if setup is successful.
Returns CUPHY_STATUS_INVALID_ARGUMENT if puschRxNoiseIntfEstHndl
and/or and/or pDynDescrsCpu
and/or pDynDescrsGpu
is NULL.
puschRxNoiseIntfEstHndl | - Handle to previously created PuschRxNoiseIntfEst instance |
pDrvdUeGrpPrmsCpu | - Pointer to derived UE groups parameters in CPU memory |
pDrvdUeGrpPrmsGpu | - Pointer to derived UE groups parameters in GPU memory |
nUeGrps | - number of UE groups to be processed |
nMaxPrb | - maximum number of PRBs across UE groups |
enableCpuToGpuDescrAsyncCpy | - Flag when set enables async copy of CPU descriptor into GPU |
pDynDescrsCpu | - Pointer to dynamic descriptors in CPU memory |
pDynDescrsGpu | - Pointer to dynamic descriptors in GPU memory |
pLaunchCfgs | - Pointer to noise-interference estimation launch configurations |
strm | - CUDA stream for descriptor copy operation |