Our customer observes ~2Gbps throughput on LS1046A 10GbE port when they run iperf test on LS1046ARDB + LSDK Yocto rootfs. With Ubuntu rootfs, they observe 6Gbps.
In the similar issue reported to the community ( https://community.nxp.com/t5/Layerscape/LS1046ARDB-maximum-throughput-for-two10G-ethernet-ports/m-p/... ), I find the suggestion "Please use Ubuntu rootfs filesystem."
Does this mean LSDK Yocto rootfs has any limitations for the network performance? Or doesn't it have any features that improve the network performance?
Solved! Go to Solution.
In Ubuntu rootfs filesystem, fmc policy is executed, this will make networking flows balanced among processors.
However in Yocto rootfs filesystem, probably only one core processes all these networking flows.
You could check CPU usage when using Ubuntu and Yocto rootfs filesystem.
Unfortunately, there is no way to check the CPU usage / core on Yocto tiny rootfs. Instead, the customer captures /proc/interrupt before and after the iperf test, and output of "ethtool -S" after the iperf test. Please find the attached.
According to this log, it seems QMan interrupts are signaled to each core evenly. Rx packets are processed by each core evenly as well.
Is there any other point to check?
Thank you for your comment.
The customer observes 20~25% of CPU usage when using Yocto rootfs by "top" command. I think this result implies that one CPU has 800~100% usage and remaining three CPUs are free.
If so, the fmc policy should be executed on Yocto rootfs. How is the fmc policy deployed to and ran on Yocto rootfs?