Replies: 1 comment
-
PING times to the primary interface of Zephyr reduce from around 30 ms to less than 2 ms with real time emulation disabled, that is with the development platform running at maximum rate. This is more in line with the less than 1 ms PING times for a hardware implementation with a roughly equivalent speed processor. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The default kernel configuration setting for Native Posix emulation as NATIVE_POSIX_SLOWDOWN_TO_REAL_TIME causes the emulation to more closely match the performance of the real target.
It appears to do so without obtaining CPU performance from the Native Posix DTS file. Much of this logic appears in the source file timer_module.c under the /boards/posix/native_posix folder.
In my network experiences, the change between enabling or disabling this setting can be fairly dramatic, PING times for the primary network interface go from an average of around 30 ms to around 2 ms, a 15x multiple.
The Zephyr binary provides some command line arguments to "tweak" the real time behavior.
The question that comes to mind then is what guidance is provided for these (or other) custom tweaks to match a target board.
For example, in my case, the target is a RISCV64 single core running at 700 MHz, whereas my
host is an 8 core NUC where each core is specified at 2.6 GHz, and system information indicates is running at 3.5 GHz.
The command line argument that seems to most closely match might be the following:
So is the appropriate ratio 3.5 GHz/700 MHz, or around 5?
Beta Was this translation helpful? Give feedback.
All reactions