Add UL-heavy Aerial config
Update cuBB image to cubb-build:25-2.1_srs-ul-heavy (release 25-2.1 with changes in the L1 config to test heavy ul) Co-authored-by: Reem Bahsoun <reem.bahsoun@openairinterface.org>
This commit is contained in:
committed by
Robert Schmidt
co-authored by
Reem Bahsoun
parent
dab8db76d7
commit
2db630e187
@@ -0,0 +1,227 @@
|
|||||||
|
Active_gNBs = ( "gNB-OAI");
|
||||||
|
# Asn1_verbosity, choice in: none, info, annoying
|
||||||
|
Asn1_verbosity = "none";
|
||||||
|
|
||||||
|
nfapi = "AERIAL";
|
||||||
|
|
||||||
|
gNBs =
|
||||||
|
(
|
||||||
|
{
|
||||||
|
////////// Identification parameters:
|
||||||
|
gNB_ID = 0xe00;
|
||||||
|
gNB_name = "gNB-OAI";
|
||||||
|
|
||||||
|
// Tracking area code, 0x0000 and 0xfffe are reserved values
|
||||||
|
tracking_area_code = 1;
|
||||||
|
plmn_list = ({ mcc = 208; mnc = 97; mnc_length = 2; snssaiList = ({ sst = 1; }); });
|
||||||
|
|
||||||
|
nr_cellid = 12345678L;
|
||||||
|
uess_agg_levels = [0,6,0,0,0];
|
||||||
|
|
||||||
|
////////// Physical parameters:
|
||||||
|
|
||||||
|
pdsch_AntennaPorts_XP = 2;
|
||||||
|
pdsch_AntennaPorts_N1 = 2;
|
||||||
|
pusch_AntennaPorts = 2;
|
||||||
|
do_CSIRS = 1;
|
||||||
|
do_SRS = 0;
|
||||||
|
min_rxtxtime = 2;
|
||||||
|
|
||||||
|
servingCellConfigCommon = (
|
||||||
|
{
|
||||||
|
#spCellConfigCommon
|
||||||
|
|
||||||
|
physCellId = 0;
|
||||||
|
|
||||||
|
# downlinkConfigCommon
|
||||||
|
#frequencyInfoDL
|
||||||
|
# center frequency = 3350.01 MHz
|
||||||
|
# selected SSB frequency = 3349.92 MHz
|
||||||
|
absoluteFrequencySSB = 623328;
|
||||||
|
dl_frequencyBand = 78;
|
||||||
|
# frequency point A = 3300.87 MHz
|
||||||
|
dl_absoluteFrequencyPointA = 620058;
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
dl_offstToCarrier = 0;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
dl_subcarrierSpacing = 1;
|
||||||
|
dl_carrierBandwidth = 273;
|
||||||
|
#initialDownlinkBWP
|
||||||
|
#genericParameters
|
||||||
|
# this is RBstart=0,L=162 (275*(275-L+1))+(274-RBstart))
|
||||||
|
initialDLBWPlocationAndBandwidth = 1099;
|
||||||
|
#
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialDLBWPsubcarrierSpacing = 1;
|
||||||
|
#pdcch-ConfigCommon
|
||||||
|
initialDLBWPcontrolResourceSetZero = 12;
|
||||||
|
initialDLBWPsearchSpaceZero = 0;
|
||||||
|
|
||||||
|
#uplinkConfigCommon
|
||||||
|
#frequencyInfoUL
|
||||||
|
ul_frequencyBand = 78;
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
ul_offstToCarrier = 0;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
ul_subcarrierSpacing = 1;
|
||||||
|
ul_carrierBandwidth = 273;
|
||||||
|
pMax = 20;
|
||||||
|
#initialUplinkBWP
|
||||||
|
#genericParameters
|
||||||
|
initialULBWPlocationAndBandwidth = 1099;
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialULBWPsubcarrierSpacing = 1;
|
||||||
|
#rach-ConfigCommon
|
||||||
|
#rach-ConfigGeneric
|
||||||
|
prach_ConfigurationIndex = 159;# testMAC 158; OAI gNB 98
|
||||||
|
#prach_msg1_FDM
|
||||||
|
#0 = one, 1=two, 2=four, 3=eight
|
||||||
|
prach_msg1_FDM = 0;
|
||||||
|
prach_msg1_FrequencyStart = 0;
|
||||||
|
zeroCorrelationZoneConfig = 12;
|
||||||
|
preambleReceivedTargetPower = -96;
|
||||||
|
#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
|
||||||
|
preambleTransMax = 6;
|
||||||
|
#powerRampingStep
|
||||||
|
# 0=dB0,1=dB2,2=dB4,3=dB6
|
||||||
|
powerRampingStep = 1;
|
||||||
|
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
|
||||||
|
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 4;
|
||||||
|
#one (0..15) 4,8,12,16,...60,64
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 15;
|
||||||
|
#ra_ContentionResolutionTimer
|
||||||
|
#(0..7) 8,16,24,32,40,48,56,64
|
||||||
|
ra_ContentionResolutionTimer = 7;
|
||||||
|
rsrp_ThresholdSSB = 19;
|
||||||
|
#prach-RootSequenceIndex_PR
|
||||||
|
#1 = 839, 2 = 139
|
||||||
|
prach_RootSequenceIndex_PR = 2;
|
||||||
|
prach_RootSequenceIndex = 1;
|
||||||
|
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
|
||||||
|
#
|
||||||
|
msg1_SubcarrierSpacing = 1,
|
||||||
|
# restrictedSetConfig
|
||||||
|
# 0=unrestricted, 1=restricted type A, 2=restricted type B
|
||||||
|
restrictedSetConfig = 0,
|
||||||
|
|
||||||
|
msg3_DeltaPreamble = 1;
|
||||||
|
p0_NominalWithGrant = -90;
|
||||||
|
|
||||||
|
# pucch-ConfigCommon setup :
|
||||||
|
# pucchGroupHopping
|
||||||
|
# 0 = neither, 1= group hopping, 2=sequence hopping
|
||||||
|
pucchGroupHopping = 0;
|
||||||
|
hoppingId = 40;
|
||||||
|
p0_nominal = -90;
|
||||||
|
|
||||||
|
ssb_PositionsInBurst_Bitmap = 1;
|
||||||
|
|
||||||
|
# ssb_periodicityServingCell
|
||||||
|
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
|
||||||
|
ssb_periodicityServingCell = 2;
|
||||||
|
|
||||||
|
# dmrs_TypeA_position
|
||||||
|
# 0 = pos2, 1 = pos3
|
||||||
|
dmrs_TypeA_Position = 0;
|
||||||
|
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
subcarrierSpacing = 1;
|
||||||
|
|
||||||
|
|
||||||
|
#tdd-UL-DL-ConfigurationCommon
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
referenceSubcarrierSpacing = 1;
|
||||||
|
# pattern1
|
||||||
|
# dl_UL_TransmissionPeriodicity
|
||||||
|
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
|
||||||
|
dl_UL_TransmissionPeriodicity = 5;
|
||||||
|
nrofDownlinkSlots = 1;
|
||||||
|
nrofDownlinkSymbols = 10;
|
||||||
|
nrofUplinkSlots = 3;
|
||||||
|
nrofUplinkSymbols = 0;
|
||||||
|
|
||||||
|
ssPBCH_BlockPower = -25;
|
||||||
|
}
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
# ------- SCTP definitions
|
||||||
|
SCTP :
|
||||||
|
{
|
||||||
|
# Number of streams to use in input/output
|
||||||
|
SCTP_INSTREAMS = 2;
|
||||||
|
SCTP_OUTSTREAMS = 2;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
////////// AMF parameters:
|
||||||
|
amf_ip_address = ({ ipv4 = "172.21.6.103"; });
|
||||||
|
|
||||||
|
|
||||||
|
NETWORK_INTERFACES :
|
||||||
|
{
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NG_AMF = "172.21.16.202";
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NGU = "172.21.16.202";
|
||||||
|
GNB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
MACRLCs = (
|
||||||
|
{
|
||||||
|
num_cc = 1;
|
||||||
|
remote_s_address = "127.0.0.1"; // pnf addr [!]
|
||||||
|
local_s_address = "127.0.0.2"; // vnf addr
|
||||||
|
local_s_portc = 50001; // vnf p5 port
|
||||||
|
remote_s_portc = 50000; // pnf p5 port [!]
|
||||||
|
local_s_portd = 50011; // vnf p7 port [!]
|
||||||
|
remote_s_portd = 50010; // pnf p7 port [!]
|
||||||
|
tr_s_preference = "aerial";
|
||||||
|
tr_n_preference = "local_RRC";
|
||||||
|
pusch_TargetSNRx10 = 220; # 150;
|
||||||
|
pucch_TargetSNRx10 = 200; #200;
|
||||||
|
dl_max_mcs = 28;
|
||||||
|
ul_max_mcs = 28;
|
||||||
|
ul_min_mcs = 16;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
security = {
|
||||||
|
# preferred ciphering algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nea0, nea1, nea2, nea3
|
||||||
|
ciphering_algorithms = ( "nea0" );
|
||||||
|
|
||||||
|
# preferred integrity algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nia0, nia1, nia2, nia3
|
||||||
|
integrity_algorithms = ( "nia2", "nia0" );
|
||||||
|
|
||||||
|
# setting 'drb_ciphering' to "no" disables ciphering for DRBs, no matter
|
||||||
|
# what 'ciphering_algorithms' configures; same thing for 'drb_integrity'
|
||||||
|
drb_ciphering = "yes";
|
||||||
|
drb_integrity = "no";
|
||||||
|
};
|
||||||
|
|
||||||
|
log_config :
|
||||||
|
{
|
||||||
|
global_log_level ="info";
|
||||||
|
hw_log_level ="info";
|
||||||
|
phy_log_level ="info";
|
||||||
|
mac_log_level ="info";
|
||||||
|
rlc_log_level ="info";
|
||||||
|
pdcp_log_level ="info";
|
||||||
|
rrc_log_level ="info";
|
||||||
|
ngap_log_level ="debug";
|
||||||
|
f1ap_log_level ="debug";
|
||||||
|
};
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Check if cuBB_SDK is defined, if not, use default path
|
||||||
|
cuBB_Path="${cuBB_SDK:-/opt/nvidia/cuBB}"
|
||||||
|
|
||||||
|
cd "$cuBB_Path" || exit 1
|
||||||
|
# Add gdrcopy to LD_LIBRARY_PATH
|
||||||
|
export LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64:/opt/mellanox/dpdk/lib/x86_64-linux-gnu:/opt/mellanox/doca/lib/x86_64-linux-gnu:/opt/nvidia/cuBB/cuPHY-CP/external/gdrcopy/build/x86_64/
|
||||||
|
|
||||||
|
# Restart MPS
|
||||||
|
# Export variables
|
||||||
|
export CUDA_DEVICE_MAX_CONNECTIONS=8
|
||||||
|
export CUDA_MPS_PIPE_DIRECTORY=/var
|
||||||
|
export CUDA_MPS_LOG_DIRECTORY=/var
|
||||||
|
|
||||||
|
# Stop existing MPS
|
||||||
|
sudo -E echo quit | sudo -E nvidia-cuda-mps-control
|
||||||
|
|
||||||
|
# Start MPS
|
||||||
|
sudo -E nvidia-cuda-mps-control -d
|
||||||
|
sudo -E echo start_server -uid 0 | sudo -E nvidia-cuda-mps-control
|
||||||
|
|
||||||
|
# Start cuphycontroller_scf
|
||||||
|
# Check if an argument is provided
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
# No argument provided, use default value
|
||||||
|
argument="P5G_FXN_GH"
|
||||||
|
else
|
||||||
|
# Argument provided, use it
|
||||||
|
argument="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sudo -E "$cuBB_Path"/build/cuPHY-CP/cuphycontroller/examples/cuphycontroller_scf "$argument"
|
||||||
|
sudo -E ./build/cuPHY-CP/gt_common_libs/nvIPC/tests/pcap/pcap_collect
|
||||||
@@ -0,0 +1,66 @@
|
|||||||
|
services:
|
||||||
|
nv-cubb:
|
||||||
|
container_name: nv-cubb
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
reservations:
|
||||||
|
devices:
|
||||||
|
- driver: nvidia
|
||||||
|
count: all
|
||||||
|
capabilities:
|
||||||
|
- gpu
|
||||||
|
network_mode: host
|
||||||
|
shm_size: 4096m
|
||||||
|
privileged: true
|
||||||
|
stdin_open: true
|
||||||
|
tty: true
|
||||||
|
volumes:
|
||||||
|
- /lib/modules:/lib/modules
|
||||||
|
- /dev/hugepages:/dev/hugepages
|
||||||
|
- /usr/src:/usr/src
|
||||||
|
- ./aerial_l1_entrypoint.sh:/opt/nvidia/cuBB/aerial_l1_entrypoint.sh
|
||||||
|
- /var/log/aerial:/var/log/aerial
|
||||||
|
- ../../../cmake_targets/share:/opt/cuBB/share
|
||||||
|
userns_mode: host
|
||||||
|
ipc: "shareable"
|
||||||
|
image: cubb-build:25-2.1_srs-ul-heavy
|
||||||
|
environment:
|
||||||
|
- cuBB_SDK=/opt/nvidia/cuBB
|
||||||
|
command: bash -c "sudo rm -rf /tmp/phy.log && sudo chmod +x /opt/nvidia/cuBB/aerial_l1_entrypoint.sh && /opt/nvidia/cuBB/aerial_l1_entrypoint.sh"
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL",'grep -q "L1 is ready!" /tmp/phy.log && echo 0 || echo 1']
|
||||||
|
interval: 20s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
oai-gnb-aerial:
|
||||||
|
cpuset: "13-16"
|
||||||
|
image: ${REGISTRY:-oaisoftwarealliance}/oai-gnb-aerial:${TAG:-develop}
|
||||||
|
depends_on:
|
||||||
|
nv-cubb:
|
||||||
|
condition: service_healthy
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- SYS_NICE
|
||||||
|
- IPC_LOCK
|
||||||
|
ipc: "container:nv-cubb"
|
||||||
|
environment:
|
||||||
|
USE_ADDITIONAL_OPTIONS: --log_config.global_log_options level,nocolor,time
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
reservations:
|
||||||
|
devices:
|
||||||
|
- driver: nvidia
|
||||||
|
count: all
|
||||||
|
capabilities:
|
||||||
|
- gpu
|
||||||
|
network_mode: host
|
||||||
|
shm_size: 4096m
|
||||||
|
volumes:
|
||||||
|
- ../../conf_files/gnb-vnf.sa.band78.273prb.aerial.ul-heavy.conf:/opt/oai-gnb/etc/gnb.conf
|
||||||
|
container_name: oai-gnb-aerial
|
||||||
|
healthcheck:
|
||||||
|
test: /bin/bash -c "ps aux | grep -v grep | grep -c softmodem"
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
Reference in New Issue
Block a user