- OS: Ubuntu 22 (tested)
- bebeltrace2
sudo apt install babeltrace2
- uuid
sudo apt-get install uuid-dev
- ROS 2 Humble
- CARET with Live Tracing Mode
- Customized Autoware Reference System
- Open GRUB file:
sudo nano /etc/default/grub
- Modify:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash isolcpus=3,4,5,6,7”
- Update GRUB:
sudo update-grub
- Reboot:
sudo reboot
- Check:
grep isolcpus /proc/cmdline
- Check single CPU:
ps -eLo psr | grep <core_number> | wc -l
-
Following instructions to set caret environment.
-
Build the workspace
cd ros2_caret_ws
source /opt/ros/humble/setup.bash
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
- Check whether CARET (ros2-tracing) is enabled.
source ~/ros2_caret_ws/install/local_setup.bash
ros2 run tracetools status # return Tracing enabled
mkdir ros2_ws & cd ros2_ws & mkdir src
# then clone autoware_reference_system into src
cd ~/ros2_ws
source /opt/ros/humble/setup.bash
source ~/ros2_caret_ws/install/local_setup.bash
colcon build --symlink-install --packages-up-to autoware_reference_system --cmake-args -DBUILD_TESTING=OFF
source ~/ros2_caret_ws/install/local_setup.bash
export ROS_TRACE_DIR=~/ros2_ws/evaluate
ros2 caret record -s your-session-name
source ~/ros2_caret_ws/install/local_setup.bash
ros2 caret record -s ATER -m
source ~/ros2_caret_ws/install/setup.bash
python3 ATER.py net://localhost/host/your-host-name/ATER True path-to-save-message-drops/drops.txt path-to-save-cputime/cputime.txt path-to-save-throughput/throughput.txt
- True: baseline
- False: ATER
source ~/ros2_caret_ws/install/local_setup.bash
source ~/ros2_ws/install/local_setup.bash
export LD_PRELOAD=$(readlink -f ~/ros2_caret_ws/install/caret_trace/lib/libcaret.so)
ros2 run autoware_reference_system autoware_system_1 > path_to_save_latency_results