This section explains how to install the requirements needed for the execution of an OAI component in a host machine connected to a USRP.
In the case of the hardware installation tutorial using 2 NUCs, proceed with the execution of the steps below on both NUCs.
Before we start this section, we consider the host machine already have Ubuntu 18.04 server OS installed. Also, please DO NOT connect the USRP B210 device to the host machines yet. Otherwise, the host machine may not boot up.
Install Linux Image low-latency
$ sudo apt install linux-image-lowlatency linux-headers-lowlatency
Power management and CPU frequency configuration
To run on OAI, we must disable p-state and c-state in Linux.
/etc/default/grub file and add change
GRUB_CMDLINE_LINUX_DEFAULT line as below:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_pstate=disable processor.max_cstate=1 intel_idle.max_cstate=0 idle=poll"
After save that file, we should command this:
$ sudo update-grub2
Next, go to
/etc/modprobe.d/blacklist.conf file and append below at the end of the file:
# for OAI blacklist intel_powerclamp
After that, reboot the NUC machine. When rebooting, we have to change the
Go to the BIOS setup page and change some parameters:
Disable secure booting option
Disable all power management functions (c-/p-state related)
Enable real-time tuning and Intel Turbo boost Once it is done, we should save and exit. Then, we reboot NUC board again.
When NUC is up and running, we should install the below tool:
$ sudo apt-get install cpufrequtils
After the installation, go to
/etc/default/cpufrequtils and write below:
NOTE: If the
/etc/default/cpufrequtils file does not exist, we should make that file.
Next, we should command below:
$ sudo systemctl disable ondemand.service $ sudo /etc/init.d/cpufrequtils restart
After that, we should reboot this machine again.
Verification of the power management and CPU frequency configuration
In order to verify configurations for the power management and CPU frequency, we should use
$ sudo apt install i7z $ sudo i7z True Frequency (without accounting Turbo) 1607 MHz CPU Multiplier 16x || Bus clock frequency (BCLK) 100.44 MHz Socket  - [physical cores=6, logical cores=6, max online cores ever=6] TURBO ENABLED on 6 Cores, Hyper Threading OFF Max Frequency without considering Turbo 1707.44 MHz (100.44 x ) Max TURBO Multiplier (if Enabled) with 1/2/3/4/5/6 Cores is 47x/47x/41x/41x/39x/39x Real Current Frequency 3058.82 MHz [100.44 x 30.45] (Max of below) Core [core-id] :Actual Freq (Mult.) C0% Halt(C1)% C3 % C6 % Temp VCore Core 1 : 3058.81 (30.45x) 100 0 0 0 64 0.9698 Core 2 : 3058.82 (30.45x) 100 0 0 0 63 0.9698 Core 3 : 3058.82 (30.45x) 100 0 0 0 64 0.9698 Core 4 : 3058.81 (30.45x) 100 0 0 0 64 0.9698 Core 5 : 3058.81 (30.45x) 100 0 0 0 65 0.9698 Core 6 : 3058.82 (30.45x) 100 0 0 0 62 0.9686
In the above results, we have to see that all cores should get
If not, some of the above configuration are missing.
Or, some of BIOS configurations are incorrect.
The steps above conclude the installation of OAI/USRP requirements.
Now, please connect the USRP B210 device to the host machines (usb 3.0).