Thread (12 messages) 12 messages, 2 authors, 2019-01-30

Re: running dpdk application on the same machine with other none dpdk application

From: Shirley Avishour <hidden>
Date: 2019-01-30 07:47:16

Hi Rami,
Thanks for the quick reply. So in fact there is no way to tell the kernel
not to run kernel threads on specific cpus?
Even not by compiling the kernel with specific flags?
Do you know if the PF_NO_SETAFFINITY flag can help in any way?

Thanks,
Shirley.


On Wed, Jan 30, 2019 at 9:26 AM Rami Rosen [off-list ref] wrote:
Hi Shirley,

I think you are right, isolcpus is for userspace threads.
...
"Use the isolcpus parameter on the kernel command line to isolate certain
cores from user-space tasks."
...
See:

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/performance_tuning_guide/sect-red_hat_enterprise_linux-performance_tuning_guide-cpu-configuration_suggestions
So if there is no way to configure JVM to use specified kernel cores (and
I am afraid there is no such way),
I am not sure how this can be solved.

Regards,
Rami Rosen


On Wed, Jan 30, 2019 at 9:05 AM Shirley Avishour [off-list ref]
wrote:
quoted
Hi Rami,

This is the printout for cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.15.0-43-generic
root=UUID=6f1a210b-a30f-456d-bf16-bbb210da5666 ro default_hugepagesz=2M
hugepagesz=2M hugepages=4096 isolcpus=1-5 nohz_full=1-5 rcu_nocbs=1-5

The requires cpus are in fact isolated but jvm generate some kernel
threads as well and I'm afraid that these kernel space threads eventually
use all cores. isolcpus is not applies on kernel space threads.

Shirley.



On Wed, Jan 30, 2019 at 8:57 AM Rami Rosen [off-list ref] wrote:
quoted
Hi Shirley,
quoted
Running java based applications on the same server with a dpdk based
application has an impact on the dpdk performance.
Probably since the JVM generates kernel based processes. I

This is true, but as far as I know, using isolcpus should prevent these
processes to run on the isolated cores.

Just to be on the safe side: did you make sure with cat /proc/cmdline on
the kernel you are actually running indeed
has the "isolcpus=1-5" you added in grub ? sometimes, especially in
multi OS hosts, adding entries in /etc/default/grub and running grub2-mkconfig
is not enough, if you boot from a different partition.

Regards,
Rami Rosen

--
regards,
Rami Rosen
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help