Part 3. Configure the gNB Server#

To install the Aerial tools, follow the Aerial CUDA-Accelerated-RAN Installation Guide.

Configure gNB Server - SMC Grace Hopper MGX#

The ARC-OTA thread-to-core assignment functionality is different from a standard Aerial installation. Layer 1 threads need to be isolated in a monolithic block and have been moved, with the rest left to layers 2 and higher. Cores [5,7,9,11,13] are used as cuPHY worker cores. Core 17 is used for the cuPHY lowprio thread; core 15 is used for the cuPHY timer thread.

Configure the Linux Kernel Command Line for ARC-OTA#

To set kernel command-line parameters, edit the GRUB_CMDLINE_LINUX parameter in the grub file /etc/default/grub.d/cmdline.cfg and append or update the parameters described below. The following kernel parameters are optimized for GH200. To automatically append the grub file with these parameters, use this command:

cat <<"EOF" | sudo tee /etc/default/grub.d/cmdline.cfg
GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX pci=realloc=off pci=pcie_bus_safe default_hugepagesz=512M hugepagesz=512M hugepages=32 tsc=reliable processor.max_cstate=0 audit=0 idle=poll rcu_nocb_poll nosoftlockup irqaffinity=0 isolcpus=managed_irq,domain,4-47 nohz_full=4-47 rcu_nocbs=4-47 earlycon module_blacklist=nouveau acpi_power_meter.force_cap_on=y numa_balancing=disable init_on_alloc=0 preempt=none"
EOF

Apply the Changes and Load the Kernel#

  1. Use the following commands to apply the command-line changes and reboot the system.

    sudo update-grub
    sudo reboot
    
  2. After rebooting, use the following command to check whether the system has booted into the low-latency kernel:

    uname -r
    6.2.0-1012-nvidia-64k
    
  3. Enter this command to check that the kernel command-line parameters are configured correctly:

    cat /proc/cmdline
    BOOT_IMAGE=/vmlinuz-6.8.0-1025-nvidia-64k root=/dev/mapper/ubuntu--vg-ubuntu--lv ro pci=realloc=off pci=pcie_bus_safe default_hugepagesz=512M hugepagesz=512M hugepages=32 tsc=reliable processor.max_cstate=0 audit=0 idle=poll rcu_nocb_poll nosoftlockup irqaffinity=0 isolcpus=managed_irq,domain,4-47 nohz_full=4-47 rcu_nocbs=4-47 earlycon module_blacklist=nouveau acpi_power_meter.force_cap_on=y numa_balancing=disable init_on_alloc=0 preempt=none