Application offloading

Hi all,
I wonder if it is possible to offload a specific application to the SmartNIC? and how we can do that during runtime?
I have looked at the doca documentation but couldn’t find anything that would help.
Thank you

It may be possible to “offload” an entire application to the Bluefield-2 ARM, but it very much depends. Currently, we’re thinking about DOCA as application acceleration: Find pieces of your existing x86 applications where there is opportunity to have the NIC perform a portion of that work via DOCA libraries. Our first release of DOCA focuses mostly on deep packet inspection and regular expression acceleration.

1 Like

Thanks for the response, which doca libraries would be helpful to offload a portion of an application?

Hi Diman,
How does one define offloading? Does running application originally intended for x86 over a BF2 device is an offload?
Both running applications over x86 and using the BF2 acceleration is possible, and running application over the ARM cores of the BF2 and using HW accelerators is possible.

1 Like

Hi Shauli,
The application is intended to run on the host but I want to offload it to the bluefield time to time. Similar to what Sean Choi is doing in Lambda nic paper , but he is using p4 programming

This is still a bit too wide in terms of me understanding what you’re trying to achieve.
If you’re trying to run a x86 based application on the host and use the regex capabilities of the BF2, it can easily be done.
If you’re trying to run the application on the ARM cores of the BF2 and be completely transparent to the host, it is also possible. I suggest following our reference applications which are both runnable on x86 and ARM.
I might need further clarification what “offload from time to time” actually means.

1 Like

Thanks Shauli,
For the containerized applications, where we have multiple instances of the same container, is it possible to change where the pod runs time to time, for example, at some point we might decide to run more pods on x86 and at another time we might run more pods on the SmartNIC.
In the separated mode, this is possible since Kubernetes gives us the flexibility to do so using service mesh. But in the embedded mode the SmartNIC+ host are one node in the kubernetes cluster, and I’d like to know whether Doca provides us a feature to make the decision on where to run the containers during run-time.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.