On Fri, 26 Mar 2021 16:52:50 -0700 Narcisa Ana Maria Vasile <navas...@linux.microsoft.com> wrote:
> From: Narcisa Vasile <navas...@microsoft.com> > > Allow the user to choose the thread priority through an EAL > command line argument. > > The user can select the thread priority to be either 'normal' > or 'critical': > --thread-prio normal > --thread-prio realtime > > Signed-off-by: Narcisa Vasile <navas...@microsoft.com> Please don't add this. This will open up a huge set of bugs. See the mailing list about how users report starvation and bug checks on Windows when using real time. In my experience, DPDK has same problem on Linux. The DPDK applications (usually) poll at 100% CPU without system calls. If the user sets these threads to real-time, then those threads have priority over kernel background tasks (like handling soft interrupt or writing to the disk). Therefore setting RT causes data loss or eventually RCU and watchdog timeouts. This patch encourages the fallacy that Real Time is faster. The DPDK poll usage model is not compatible with the OS defintion of real time. Real time is for processes doing system calls that have precise timing requirements about when to wakeup from those system calls.