Hi all,
The ENA DPDK driver supports a feature called write combing[1] that is supposed enable the use of the ENA hardware's low latency queue functionality to improve performance. Support was built into the igb_uio kernel module, but the vfio-pci module must be patched/rebuilt to include support. After a few false starts[2][3] I was able to rebuild the VFIO module successfully, but I am not seeing any changes in performance or metrics.
I was wondering if anyone here might be able to shed light on whether not it is reasonable to expect any performance difference from this feature with a simple Seastar HTTPD workload (in a low-latency cluster placement group). I also opened an issue on the ENA driver repo[4] to see if there is a way to verify that the feature is working when using DPDK.
I'm not surprised you're not seeing extra performance. From what I can tell it avoids a DMA access for the header, maybe 100-200 nanoseconds. This will only be measurable in ping-pong workloads that have very few packets in flight.
You may be able to measure it with wrk with one thread and one
connection, but maybe even not that.
--
You received this message because you are subscribed to the Google Groups "seastar-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to seastar-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/seastar-dev/7e5b05f3-61a0-4b85-abe8-dcec12c88889n%40googlegroups.com.
Thanks for the additional insight Avi. It also appears that the patch wasn't working quite as expected with kernel 5.15[1]. Even though I updated the code to apply the patch cleanly, it needed to be updated to build a new module as well. I will keep your example workload in mind when I test it again.