ros2のpendulum_demo[https://github.com/ros2/demos/tree/master/pendulum_control]を実行してみたときのメモ。
環境
ホスト環境
OS:PROXMOX VE 7.2
CPU:intel core i7 -11800H
Mem:16GB
ゲスト環境
OS:Ubuntu 22.04
CPU:8vCPU
Mem:12GB
非リアルタイムカーネル使用
pendulum_demoの実行
まずはそのまま実行してみる。
anishiyama@ubuntu-ros2:~/ros2/humble$ source ./install/setup.sh
anishiyama@ubuntu-ros2:~/ros2/humble$ pendulum_demo
Couldn't set scheduling priority and policy: Operation not permitted
Caught exception: std::bad_alloc
Unlocking memory and continuing.
Couldn't lock all cached virtual memory.
Pagefaults from reading pages not yet mapped into RAM will be recorded.
Initial major pagefaults: 0
Initial minor pagefaults: 315622
No results filename given, not writing results
rttest statistics:
- Minor pagefaults: 0
- Major pagefaults: 0
Latency (time after deadline was missed):
- Min: 57384 ns
- Max: 210201 ns
- Mean: 90464.533000 ns
- Standard deviation: 25207.301195
PendulumMotor received 496 messages
PendulumController received 495 messages
いくつかメッセージが確認できるので、 readmeに従い/etc/security/limits.confを編集する。 同時にpriorityも98まで設定できるようにする。 実行ユーザがanisiyamaなので、次の記述を追加した。
anishiyama - memlock 10000000
anishiyama - rtprio 98
ログインし直して再実行。 メッセージはいくつか消えた。 仮想環境なためか、実行レイテンシは大きめ。
anishiyama@ubuntu-ros2:~/ros2/humble$ pendulum_demo
Initial major pagefaults: 0
Initial minor pagefaults: 2124626
No results filename given, not writing results
rttest statistics:
- Minor pagefaults: 0
- Major pagefaults: 0
Latency (time after deadline was missed):
- Min: 8947 ns
- Max: 224184 ns
- Mean: 51156.345000 ns
- Standard deviation: 29789.714229
PendulumMotor received 498 messages
PendulumController received 493 messages
0 件のコメント:
コメントを投稿