1
0
mirror of https://gitlab.com/obbart/universal_robots_ros_driver.git synced 2026-04-09 17:40:47 +02:00

Added section about CPU scaling

This commit is contained in:
Felix Mauch
2019-10-06 17:05:26 +02:00
committed by Tristan Schnell
parent 55e764090c
commit 0f18242f8d

View File

@@ -253,3 +253,30 @@ $ uname -v | cut -d" " -f1-4
#1 SMP PREEMPT RT
```
## Optional: Disable CPU speed scaling
Many modern CPUs support changing their clock frequency dynamically depending on the currently
requested computation resources. In some cases this can lead to small interruptions in execution.
While the real-time scheduled controller thread should be unaffected by this, any external
components such as a visual servoing system might be interrupted for a short period on scaling
changes.
To check and modify the power saving mode, install cpufrequtils:
```bash
$ sudo apt install cpufrequtils
```
Run `cpufreq-info` to check available "governors" and the current CPU Frequency (`current CPU
frequency is XXX MHZ`). In the following we will set the governor to "performance".
```bash
$ sudo systemctl disable ondemand
$ sudo systemctl enable cpufrequtils
$ sudo sh -c 'echo "GOVERNOR=performance" > /etc/default/cpufrequtils'
$ sudo systemctl daemon-reload && sudo systemctl restart cpufrequtils
```
This disables the `ondemand` CPU scaling daemon, creates a `cpufrequtils` config file and restarts
the `cpufrequtils` service. Check with `cpufreq-info`.
For further information about governors, please see the [kernel
documentation](https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt).