SR-IOV(single root input/output virtualization) is an I/O virtualization technology that allows one PCIe device to appear as many separate PCIe devices. This functionality is achieved by introducing the concept of VF(Virtual functions) and PF(Physical functions). PFs are full-featured PCIe network functions; VFs are “lightweight” network functions that lack configuration resources.

Much has been said about SR-IOV and it’s benefits. The question we are addressing here is, what is the effect on the performance or latency of our NICs as we make these VFs/PFs? But before that some basics are necessary.


Let's begin with the most trivial question; How to make…

The DPDK timer library is used to provide timer services to DPDK applications. Some appreciable features of this library are:

  • Timers can be periodic or for single use.
  • Timers can be loaded on one core and be executed on another
  • High precision
  • Timers can be disabled at compile time if they are not required

With the Timer Library, the user can add, delete and/or restart a timer. There is a user-defined call-back function associated with each timer. This call-back function is called by __rte_timer_manage whenever a timer expires.

Important Data-Structures and States

As the application may use multiple timers, the library holds these timers…

Sarosh Arif

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store