fhi_72: allow to provide dpdk_mem_size to xran
xran has a mechanism to request DPDK to allocate a configurable amount of bytes for huge pages. We set it to 0 until now; expose this variable through configuration, and provide a meaningful default 8192 MiB. Provide documentation.
This commit is contained in:
@@ -783,6 +783,12 @@ Edit the sample OAI gNB configuration file and check following parameters:
|
||||
* `ru_addr`: RU C- and U-plane MAC-addresses (format `UU:VV:WW:XX:YY:ZZ`,
|
||||
hexadecimal numbers)
|
||||
* `mtu`: Maximum Transmission Unit for the RU, specified by RU vendor
|
||||
* `dpdk_mem_size`: the huge page size that should be pre-allocated by DPDK
|
||||
_for NUMA node 0_; by default, this is 8192 MiB (corresponding to 8 huge
|
||||
pages à 1024 MiB each, see above). In the current implementation, you
|
||||
cannot preallocate memory on NUMA nodes other than 0; in this case, set
|
||||
this to 0 (no pre-allocation) and so that DPDK will allocate it on-demand
|
||||
on the right NUMA node.
|
||||
* `fh_config`: parameters that need to match RU parameters
|
||||
* timing parameters (starting with `T`) depend on the RU: `Tadv_cp_dl` is a
|
||||
single number, the rest pairs of numbers `(x, y)` specifying minimum and
|
||||
|
||||
@@ -498,7 +498,7 @@ static bool set_fh_io_cfg(struct xran_io_cfg *io_cfg, const paramdef_t *fhip, in
|
||||
//io_cfg->bbdev_dev = NULL;
|
||||
io_cfg->bbdev_mode = XRAN_BBDEV_NOT_USED; // none
|
||||
io_cfg->dpdkIoVaMode = 0; /* IOVA mode */
|
||||
io_cfg->dpdkMemorySize = 0; /* DPDK memory size */
|
||||
io_cfg->dpdkMemorySize = *gpd(fhip, nump, ORAN_CONFIG_DPDK_MEM_SIZE)->uptr;
|
||||
io_cfg->core = *gpd(fhip, nump, ORAN_CONFIG_IO_CORE)->iptr;
|
||||
io_cfg->system_core = *gpd(fhip, nump, ORAN_CONFIG_SYSTEM_CORE)->iptr;
|
||||
io_cfg->pkt_proc_core = get_u64_mask(gpd(fhip, nump, ORAN_CONFIG_WORKER_CORES));
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#define ORAN_CONFIG_FILE_PREFIX "file_prefix"
|
||||
#define ORAN_CONFIG_NETHPERPORT "eth_lines"
|
||||
#define ORAN_CONFIG_NETHSPEED "eth_speed"
|
||||
#define ORAN_CONFIG_DPDK_MEM_SIZE "dpdk_mem_size"
|
||||
|
||||
// clang-format off
|
||||
// TODO: PCI addr check
|
||||
@@ -52,6 +53,7 @@
|
||||
{ORAN_CONFIG_FILE_PREFIX, "DPDK file-prefix\n", 0, .strptr=NULL, .defstrval="wls_0", TYPE_STRING, 0}, \
|
||||
{ORAN_CONFIG_NETHPERPORT, "number of links per port\n", 0, .uptr=NULL, .defuintval=1, TYPE_UINT, 0}, \
|
||||
{ORAN_CONFIG_NETHSPEED, "ethernet speed link\n", 0, .uptr=NULL, .defuintval=10, TYPE_UINT, 0}, \
|
||||
{ORAN_CONFIG_DPDK_MEM_SIZE, "DPDK huge page pre-allocation in MiB\n", 0, .uptr=NULL, .defuintval=8192, TYPE_UINT, 0}, \
|
||||
}
|
||||
// clang-format on
|
||||
|
||||
|
||||
Reference in New Issue
Block a user