Hi Rashi,
Please change the argument to rte_eal_init (), in your code, -c 0x2 will
always bind it to 1st core . Change it to "-c", "0x30" for pinning core 4
and 5.
int dpdk_argc = 8; char *dpdk_argv[] = { procName, "-c", "0x2",
"--no-huge", filePrefix ,"-m","64" , "--log-level=eal,8"};
Thanks,
*-Rajesh*
On Wed, Feb 26, 2025 at 10:25 AM Rashi Agarwal <[email protected]>
wrote:
> *Hi DPDK Community,*
>
> I am facing an issue where *CPU affinity is not working as expected in
> RHEL8* with DPDK 20.05, while it works fine in RHEL7.
>
> *Problem Statement:*
>
> · When running my program with numactl -C4,5 ./testRTE on *RHEL7*,
> the worker threads correctly bind to the assigned cores.
>
> · However, on *RHEL8*, the worker threads always bind to *core 1*,
> ignoring the specified CPU set.
>
>
>
> *Environment Details:*
>
> - *DPDK Version:* 20.05.0
> - *OS:* RHEL8 (Issue) | RHEL7 (Works Fine)
> - *CPU Affinity Tool:* numactl -C
>
> *Sample Program: *Attached
>
> *Observations:*
>
> - In *RHEL7*, worker threads correctly bind to cores specified using
> numactl
> -C.
> - In *RHEL8*, the threads always bind to *core 1*, ignoring the CPU
> set.
> - Could DPDK be overriding the CPU affinity in RHEL8?
>
> *Questions:*
>
> 1. Is there any known change in CPU affinity handling between RHEL7
> and RHEL8 affecting DPDK?
> 2. Does DPDK override thread affinity when rte_eal_init() is called?
> 3. Is there any workaround or EAL flag to ensure that CPU affinity is
> respected?
>
> Any insights or suggestions would be greatly appreciated.
>
> Thanks,
>
> Rashi Agarwal.
>