Real Time Tests
This section contains information on benchmarking the OS after it has been patched with a RT kernel.
Option 1: Cyclic Test
- Download the rt-test files from https://mirrors.edge.kernel.org/pub/linux/utils/rt-tests/. Also available in the RT tests folder.
- Extract them into a folder on the BBB. Run
make all
on a terminal. Runmake NUMA=0
if you encounter errors with the former. - You can now start a cyclic test by running
sudo ./cyclictest -p 80
in the same folder. If you run without-p 80
, there is no RT priority. - Run a cpu stress test at same time while benchmarking. You can use stress. Also available in the RT tests folder.
- Copy to the stress deb packages to BBB and install using
sudo dpkg -i <package name>.deb
. - Run stress test for 120s using:
stress --cpu 64 --io 64 --vm 2 --timeout 120 --vm-bytes 128M &
Square Wave
- Copy the
square.cpp
file andGPIO
folder from RT tests folder onto the BBB. - Compile using
g++ GPIO/GPIOConst.cpp GPIO/GPIOManager.cpp -o swave square.cpp -lrt -Wall
. - This program creates a square wave with specified interval.
- Run program using
sudo swave 90 50000
to start a square wave on BBB pin 9.23 with fifo scheduling priority 90 and wave interval 50000 ns. - You can check this wave using an oscilloscope connect to pin 9.23 and GND pin of BBB.
- Run
stress
as stated in cyclic test section to load the system.