NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
DOCA PCC Device Utilities
Collaboration diagram for DOCA PCC Device Utilities:

Macros

#define DOCA_DPA_DEVICE
 declares that we are compiling for the DPA Device More...
 
#define doca_pcc_dev_fxp_recip(a_fp)   __dpa_fxp_rcp(a_fp)
 fixed point 16b reciprocal More...
 
#define doca_pcc_dev_fxp_power2(a_fp)   __dpa_fxp_pow2(a_fp)
 fixed point 16b power of 2 More...
 
#define doca_pcc_dev_fxp_log2(a_fp)   __dpa_fxp_log2(a_fp)
 fixed point 16b log 2 More...
 
#define doca_pcc_dev_fls(a)   (32 - __builtin_clz(a))
 32b find last set More...
 
#define doca_pcc_dev_mult(a, b)   ((uint64_t)(a) * (uint64_t)(b))
 mult wrapper More...
 
#define doca_pcc_dev_fxp_mult(a, b)   ((uint32_t)((doca_pcc_dev_mult((a), (b)) >> 16) & 0xffffffff))
 fixed point 16b mult More...
 
#define doca_pcc_dev_fence_all()   __dpa_thread_fence(__DPA_SYSTEM, __DPA_RW, __DPA_RW)
 fence all More...
 
#define doca_pcc_dev_fence_memory()   __dpa_thread_fence(__DPA_MEMORY, __DPA_RW, __DPA_RW)
 fence memory operations More...
 
#define doca_pcc_dev_fence_io()   __dpa_thread_fence(__DPA_MMIO, __DPA_RW, __DPA_RW)
 fence io operations More...
 
#define doca_pcc_dev_fence_w_r()   __dpa_thread_fence(__DPA_MEMORY, __DPA_W, __DPA_R)
 fence w/r More...
 
#define doca_pcc_dev_get_thread_time()   __dpa_thread_time()
 return 1usec tick count More...
 

Functions

DOCA_STABLE FORCE_INLINE uint32_t doca_pcc_dev_get_timer_lo (void)
 Core timer access (elapsed time in uSec) function 32 bits. More...
 
DOCA_STABLE FORCE_INLINE uint64_t doca_pcc_dev_get_timer (void)
 Core timer access (elapsed time in uSec) function 64 bits. More...
 

Detailed Description

DOCA PCC Device library. For more details please refer to the user guide on DOCA devzone.

Macro Definition Documentation

◆ DOCA_DPA_DEVICE

#define DOCA_DPA_DEVICE

declares that we are compiling for the DPA Device

Note
Must be defined before the first API use/include of DOCA

Definition at line 31 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fence_all

#define doca_pcc_dev_fence_all ( )    __dpa_thread_fence(__DPA_SYSTEM, __DPA_RW, __DPA_RW)

fence all

Definition at line 73 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fence_io

#define doca_pcc_dev_fence_io ( )    __dpa_thread_fence(__DPA_MMIO, __DPA_RW, __DPA_RW)

fence io operations

Definition at line 83 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fence_memory

#define doca_pcc_dev_fence_memory ( )    __dpa_thread_fence(__DPA_MEMORY, __DPA_RW, __DPA_RW)

fence memory operations

Definition at line 78 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fence_w_r

#define doca_pcc_dev_fence_w_r ( )    __dpa_thread_fence(__DPA_MEMORY, __DPA_W, __DPA_R)

fence w/r

Definition at line 88 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fls

#define doca_pcc_dev_fls (   a)    (32 - __builtin_clz(a))

32b find last set

Definition at line 58 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fxp_log2

#define doca_pcc_dev_fxp_log2 (   a_fp)    __dpa_fxp_log2(a_fp)

fixed point 16b log 2

Definition at line 53 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fxp_mult

#define doca_pcc_dev_fxp_mult (   a,
 
)    ((uint32_t)((doca_pcc_dev_mult((a), (b)) >> 16) & 0xffffffff))

fixed point 16b mult

Definition at line 68 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fxp_power2

#define doca_pcc_dev_fxp_power2 (   a_fp)    __dpa_fxp_pow2(a_fp)

fixed point 16b power of 2

Definition at line 48 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_fxp_recip

#define doca_pcc_dev_fxp_recip (   a_fp)    __dpa_fxp_rcp(a_fp)

fixed point 16b reciprocal

Definition at line 43 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_get_thread_time

#define doca_pcc_dev_get_thread_time ( )    __dpa_thread_time()

return 1usec tick count

Definition at line 93 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_mult

#define doca_pcc_dev_mult (   a,
 
)    ((uint64_t)(a) * (uint64_t)(b))

mult wrapper

Definition at line 63 of file doca_pcc_dev_utils.h.

Function Documentation

◆ doca_pcc_dev_get_timer()

DOCA_STABLE FORCE_INLINE uint64_t doca_pcc_dev_get_timer ( void  )

Core timer access (elapsed time in uSec) function 64 bits.

Returns
time in uSec.

Definition at line 112 of file doca_pcc_dev_utils.h.

◆ doca_pcc_dev_get_timer_lo()

DOCA_STABLE FORCE_INLINE uint32_t doca_pcc_dev_get_timer_lo ( void  )

Core timer access (elapsed time in uSec) function 32 bits.

Returns
time in uSec.

Definition at line 101 of file doca_pcc_dev_utils.h.