04-07-2024 10:31 PM
Has anyone encountered an increase in data penetration latency when using exasock for transparent acceleration on a k3p-s(X25) device?
The background of the issue is as follows: I am using a third-party service's dynamic library to send network data to a server. When not using exasock acceleration, the entire data penetration process takes around 8ns to complete, as observed by the kernel. However, when using exasock acceleration, the entire data penetration process takes around 32us. I am unsure of the reasons behind this increase in latency, but I do know that the third-party service's dynamic library includes frequent select calls. Could these select function calls be causing the issue? If so, are there any methods to resolve it?
04-08-2024 02:43 AM
Not an expert here, but reading some stuff on this in the past it could be frequent select calls in the third-party library are likely the culprit behind the increased latency you see. The select calls introduce overhead within the user-space application and the calls essentially poll the kernel for network activity, which adds latency compared to the kernel-driven network processing that exasock aims to avoid.
There could be other stuff here too, such as interaction between the third-party library and the exasock acceleration mechanism, or other aspects of the hardware offload implementation.
Hope this helps.
04-08-2024 06:20 PM
Thank you very much for the response. Strangely, when using onload acceleration, the latency of the same program is normal. I wonder if there are specific settings for exasock, or if there are limitations to using exasock on programs with select calls?
04-09-2024 02:56 AM
So it sounds like the frequent select calls in your third-party library are likely causing the high latency with exasock's transparent acceleration, as such these calls introduce user-space overhead that exasock tries to bypass here.
If onload acceleration provides the desired performance you are looking for, you could consider using it for this specific program. While this requires application modification, the latency benefit might outweigh the development effort.
Hope this helps.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide