The rt-configure shell script added in RMP 11does not set /sys/devices/system/cpu/cpufreq/boost to 0.
In the testing we’ve done so far, it hasn’t been necessary for us to disable CPU turbo/overclocking by writing to this file in order to achieve our target sample rate of 4khz. Additionally, many of the real-time tuning guides we referenced either don’t explicitly mention it or have a section about configuring BIOS settings (which likely include CPU turbo/overclocking) based on your hardware.
However, it may improve determinism according to the kernel docs (CPU Performance Scaling — The Linux Kernel documentation), we just haven’t added it to our configuration script yet. Is this something you require in the script? As a temporary fix, perhaps you can edit the script or adjust the turbo/overclocking from the BIOS?
The rmp-eval program checks for this and marks it failed if not disabled.
You’re right, I overlooked the fact that the rmp-eval program does check this. We’ll have to look into disabling CPU boost from our configuration script in a future release. In the meantime, Can you add the line echo 0 > /sys/devices/system/cpu/cpufreq/boost to the end of your local copy of the rt-configure.sh script? That should get it to disable CPU boost from the script if you are using the script to configure your system on boot.
I wonder if this change is necessary? You stated you have not seen any problems in your testing at 4kHz (our desired cycle time). I’ve not seen any issues on our iPC400 either. It seems that on the SMT pairs we have isolated for RMP and our application they never boost, while the non isolated SMT pairs do boost.
It may not be strictly necessary, but it’s true that having the CPU transition between the non-boost and boosted states may cause some latency that isn’t visible under the current conditions or significant enough for the current use case. Although, since the rmp-eval tool checks for this setting, then it would be convenient to just have the rt-configure.sh script address as many items from rmp-eval’s list as it can.
I agree.