o-du/phy
Intel O-RAN/X-RAN Generated Doxygen Documentation
Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes
PrachPerf Class Reference
Inheritance diagram for PrachPerf:
Inheritance graph
Collaboration diagram for PrachPerf:
Collaboration graph

Static Public Member Functions

static void SetUpTestCase ()
 
static void TearDownTestCase ()
 
static unsigned get_number_of_cases (const std::string &type)
 

Static Public Attributes

static json conf
 
static std::string test_type
 

Protected Member Functions

void SetUp () override
 
void TearDown () override
 
void set_division_factor (const double factor)
 Set division factor. More...
 
void set_results_units (const std::string &units)
 Set reults units. More...
 
void set_parallelization_factor (const int factor)
 Set size of processed data. More...
 
template<typename F , typename ... Args>
void performance (const std::string &isa, const std::string &module_name, F function, Args ... args)
 Run performance test case for a given function. More...
 
void print_test_description (const std::string &isa, const std::string &module_name)
 Print unique test description to the results xml file. More...
 
const std::string get_case_name ()
 Get name of the test case from JSON file. More...
 
void init_test (const std::string &type)
 Defines section in the conf.json that is used to load parameters from. More...
 
template<typename T >
get_input_parameter (const std::string &parameter_name)
 Load selected data from a JSON object. get_input_parameter loads data from parameters section of the test case in JSON file and get_reference_parameter does the same thing for references section. More...
 
template<typename T >
get_reference_parameter (const std::string &parameter_name)
 

Protected Attributes

struct xran_fh_config m_xranConf
 
struct xran_device_ctx m_xran_dev_ctx
 
struct xran_prach_configm_pPRACHConfig
 
struct xran_prach_cp_configm_pPrachCPConfig
 
struct xran_section_gen_infom_pSectGenInfo = NULL
 
int m_maxSections = 8
 
int lastsymbol
 
struct rte_mbuf * m_pTestBuffer
 
struct xran_cp_gen_params m_params
 
struct xran_recv_packet_info m_pktInfo
 
struct xran_cp_gen_params m_result
 
uint8_t m_dir
 
std::string m_dirStr
 
uint8_t m_sectionType
 
uint8_t m_ccId
 
uint8_t m_antId
 
uint8_t m_seqId
 
uint8_t m_frameId
 
uint8_t m_subframeId
 
uint8_t m_slotId
 
uint8_t m_symStart
 
uint8_t m_symNum
 
uint16_t * m_prbStart = NULL
 
uint16_t * m_prbNum = NULL
 
uint8_t m_iqWidth
 
uint8_t m_compMethod
 
uint16_t m_beamId
 
uint16_t m_reMask = 0xfff
 
uint16_t m_sectionId
 
uint8_t m_filterIndex
 
uint8_t m_fftSize
 
uint8_t m_startSymId
 
uint8_t m_x
 
uint8_t m_filterIdx
 
uint16_t m_startPrbc
 
uint8_t m_numPrbc
 
uint8_t m_numSymbol
 
uint16_t m_timeOffset
 
int32_t m_freqOffset
 
uint8_t m_nrofPrachInSlot
 
uint8_t m_occassionsInPrachSlot
 
uint8_t m_y [XRAN_PRACH_CANDIDATE_Y]
 
uint8_t m_isPRACHslot [XRAN_PRACH_CANDIDATE_SLOT]
 
int m_prach_start_symbol
 
int m_prach_last_symbol
 
uint8_t m_SlotNrNum
 
double division_factor = 1.0
 
std::string result_units = "None"
 
int parallelization_factor = 1
 

Detailed Description

Definition at line 33 of file prach_performance.cc.

Member Function Documentation

◆ get_case_name()

const std::string get_case_name ( )
inlineprotectedinherited

Get name of the test case from JSON file.

Returns
Test'ss case name or a default name if name field is missing.

Definition at line 338 of file common.hpp.

◆ get_input_parameter()

T get_input_parameter ( const std::string &  parameter_name)
inlineprotectedinherited

Load selected data from a JSON object. get_input_parameter loads data from parameters section of the test case in JSON file and get_reference_parameter does the same thing for references section.

Get parameter function uses template type to figure out how to load parameters. If type is NOT a pointer it'll load value directly from the JSON. Otherwise path to the test vector is expected and function will allocate memory, load data from the binary file to this memory location and return pointer to it. For example in here we request to load pointer to float so llrs filed is expected to be a path to the binary file.

Definition at line 290 of file common.hpp.

Here is the call graph for this function:

◆ get_number_of_cases()

static unsigned get_number_of_cases ( const std::string &  type)
inlinestaticinherited

Definition at line 190 of file common.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_reference_parameter()

T get_reference_parameter ( const std::string &  parameter_name)
inlineprotectedinherited

Definition at line 312 of file common.hpp.

Here is the call graph for this function:

◆ init_test()

void init_test ( const std::string &  type)
inlineprotectedinherited

Defines section in the conf.json that is used to load parameters from.

Parameters
[in]typeName of the section in the JSON file.

Definition at line 358 of file common.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ performance()

void performance ( const std::string &  isa,
const std::string &  module_name,
function,
Args ...  args 
)
inlineprotectedinherited

Run performance test case for a given function.

Parameters
[in]isaUsed Instruction Set.
[in]module_namename of the tested kernel.
[in]functionfunction to be tested.
[in]argsfunction's arguments.

Definition at line 253 of file common.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ print_test_description()

void print_test_description ( const std::string &  isa,
const std::string &  module_name 
)
inlineprotectedinherited

Print unique test description to the results xml file.

Parameters
[in]isaUsed Instruction Set.
[in]module_namename of the tested kernel.
[in]functionfunction to be tested.

Definition at line 271 of file common.hpp.

◆ set_division_factor()

void set_division_factor ( const double  factor)
inlineprotectedinherited

Set division factor.

Parameters
[in]factorDivision factor that divides mean and standard deviation.

Definition at line 222 of file common.hpp.

◆ set_parallelization_factor()

void set_parallelization_factor ( const int  factor)
inlineprotectedinherited

Set size of processed data.

Parameters
[in]sizeSize of processed data used to calculate module throughput.

Definition at line 240 of file common.hpp.

◆ set_results_units()

void set_results_units ( const std::string &  units)
inlineprotectedinherited

Set reults units.

Parameters
[in]unitsUnits that are displayed in the report.

Definition at line 231 of file common.hpp.

◆ SetUp()

void SetUp ( )
inlineoverrideprotected

Definition at line 91 of file prach_performance.cc.

Here is the call graph for this function:

◆ SetUpTestCase()

static void SetUpTestCase ( )
inlinestaticinherited

Definition at line 162 of file common.hpp.

Here is the call graph for this function:

◆ TearDown()

void TearDown ( )
inlineoverrideprotected

Definition at line 160 of file prach_performance.cc.

◆ TearDownTestCase()

static void TearDownTestCase ( )
inlinestaticinherited

Definition at line 185 of file common.hpp.

Field Documentation

◆ conf

json conf
staticinherited

Definition at line 159 of file common.hpp.

◆ division_factor

double division_factor = 1.0
protectedinherited

Definition at line 214 of file common.hpp.

◆ lastsymbol

int lastsymbol
protected

Definition at line 47 of file prach_performance.cc.

◆ m_antId

uint8_t m_antId
protected

Definition at line 59 of file prach_performance.cc.

◆ m_beamId

uint16_t m_beamId
protected

Definition at line 66 of file prach_performance.cc.

◆ m_ccId

uint8_t m_ccId
protected

Definition at line 59 of file prach_performance.cc.

◆ m_compMethod

uint8_t m_compMethod
protected

Definition at line 65 of file prach_performance.cc.

◆ m_dir

uint8_t m_dir
protected

Definition at line 55 of file prach_performance.cc.

◆ m_dirStr

std::string m_dirStr
protected

Definition at line 56 of file prach_performance.cc.

◆ m_fftSize

uint8_t m_fftSize
protected

Definition at line 71 of file prach_performance.cc.

◆ m_filterIdx

uint8_t m_filterIdx
protected

Definition at line 76 of file prach_performance.cc.

◆ m_filterIndex

uint8_t m_filterIndex
protected

Definition at line 69 of file prach_performance.cc.

◆ m_frameId

uint8_t m_frameId
protected

Definition at line 61 of file prach_performance.cc.

◆ m_freqOffset

int32_t m_freqOffset
protected

Definition at line 81 of file prach_performance.cc.

◆ m_iqWidth

uint8_t m_iqWidth
protected

Definition at line 65 of file prach_performance.cc.

◆ m_isPRACHslot

uint8_t m_isPRACHslot[XRAN_PRACH_CANDIDATE_SLOT]
protected

Definition at line 85 of file prach_performance.cc.

◆ m_maxSections

int m_maxSections = 8
protected

Definition at line 46 of file prach_performance.cc.

◆ m_nrofPrachInSlot

uint8_t m_nrofPrachInSlot
protected

Definition at line 82 of file prach_performance.cc.

◆ m_numPrbc

uint8_t m_numPrbc
protected

Definition at line 78 of file prach_performance.cc.

◆ m_numSymbol

uint8_t m_numSymbol
protected

Definition at line 79 of file prach_performance.cc.

◆ m_occassionsInPrachSlot

uint8_t m_occassionsInPrachSlot
protected

Definition at line 83 of file prach_performance.cc.

◆ m_params

struct xran_cp_gen_params m_params
protected

Definition at line 51 of file prach_performance.cc.

◆ m_pktInfo

struct xran_recv_packet_info m_pktInfo
protected

Definition at line 52 of file prach_performance.cc.

◆ m_pPRACHConfig

struct xran_prach_config* m_pPRACHConfig
protected

Definition at line 42 of file prach_performance.cc.

◆ m_pPrachCPConfig

struct xran_prach_cp_config* m_pPrachCPConfig
protected

Definition at line 43 of file prach_performance.cc.

◆ m_prach_last_symbol

int m_prach_last_symbol
protected

Definition at line 87 of file prach_performance.cc.

◆ m_prach_start_symbol

int m_prach_start_symbol
protected

Definition at line 86 of file prach_performance.cc.

◆ m_prbNum

uint16_t * m_prbNum = NULL
protected

Definition at line 63 of file prach_performance.cc.

◆ m_prbStart

uint16_t* m_prbStart = NULL
protected

Definition at line 63 of file prach_performance.cc.

◆ m_pSectGenInfo

struct xran_section_gen_info* m_pSectGenInfo = NULL
protected

Definition at line 45 of file prach_performance.cc.

◆ m_pTestBuffer

struct rte_mbuf* m_pTestBuffer
protected

Definition at line 49 of file prach_performance.cc.

◆ m_reMask

uint16_t m_reMask = 0xfff
protected

Definition at line 67 of file prach_performance.cc.

◆ m_result

struct xran_cp_gen_params m_result
protected

Definition at line 53 of file prach_performance.cc.

◆ m_sectionId

uint16_t m_sectionId
protected

Definition at line 68 of file prach_performance.cc.

◆ m_sectionType

uint8_t m_sectionType
protected

Definition at line 57 of file prach_performance.cc.

◆ m_seqId

uint8_t m_seqId
protected

Definition at line 60 of file prach_performance.cc.

◆ m_slotId

uint8_t m_slotId
protected

Definition at line 61 of file prach_performance.cc.

◆ m_SlotNrNum

uint8_t m_SlotNrNum
protected

Definition at line 88 of file prach_performance.cc.

◆ m_startPrbc

uint16_t m_startPrbc
protected

Definition at line 77 of file prach_performance.cc.

◆ m_startSymId

uint8_t m_startSymId
protected

Definition at line 74 of file prach_performance.cc.

◆ m_subframeId

uint8_t m_subframeId
protected

Definition at line 61 of file prach_performance.cc.

◆ m_symNum

uint8_t m_symNum
protected

Definition at line 62 of file prach_performance.cc.

◆ m_symStart

uint8_t m_symStart
protected

Definition at line 62 of file prach_performance.cc.

◆ m_timeOffset

uint16_t m_timeOffset
protected

Definition at line 80 of file prach_performance.cc.

◆ m_x

uint8_t m_x
protected

Definition at line 75 of file prach_performance.cc.

◆ m_xran_dev_ctx

struct xran_device_ctx m_xran_dev_ctx
protected

Definition at line 41 of file prach_performance.cc.

◆ m_xranConf

struct xran_fh_config m_xranConf
protected

Definition at line 40 of file prach_performance.cc.

◆ m_y

uint8_t m_y[XRAN_PRACH_CANDIDATE_Y]
protected

Definition at line 84 of file prach_performance.cc.

◆ parallelization_factor

int parallelization_factor = 1
protectedinherited

Definition at line 216 of file common.hpp.

◆ result_units

std::string result_units = "None"
protectedinherited

Definition at line 215 of file common.hpp.

◆ test_type

std::string test_type
staticinherited

Definition at line 160 of file common.hpp.


The documentation for this class was generated from the following file: