[dpdk-dev] [PATCH 0/3] new software event timer adapter

Pavan Nikhilesh pbhagavatula at caviumnetworks.com
Fri Nov 30 08:26:28 CET 2018


Hi Eric,

I think we may need to address the librte_timer and event_timer patches in
separate series as we are modifying common code for the sake of sw_event_timer
PMD and the series title implies that only the PMD has been modified.

Also, I think we need to profile and report the performance regression
(timer_perf_autotest,) if any of the rte_timer library with the new patches
as it is also used as a standalone library.

On Thu, Nov 29, 2018 at 05:35:11PM -0600, Erik Gabriel Carrillo wrote:
> This patch series introduces a new version of the event timer
> adapter software PMD [1].  In the original design, timer event producer
> lcores in the primary and secondary processes enqueued event timers
> into a ring, and a service core in the primary process dequeued them
> and processed them further.  To improve performance, this version does
> away with the ring and lets the lcores in both primary and secondary
> processes insert timers into directly into the timer skiplist data
> structures; the service core directly accesses the lists as well.
> To achieve this, however, modifications to the timer library [2] are
> required to enable the timer skiplists to be created and accessed in
> shared memory.  New APIs are introduced in the timer library to enable
> selecting from multiple instances of the timer skiplists. Instances of
> the event timer adapter, as well as the original APIs of the timer
> library, can then each access distinct timer lists.
>
> Future versions of this series will hopefully improve the names
> used for the data structures and APIs in the timer library.
>
> This series depends on the following patch:
> https://patches.dpdk.org/patch/48417/
>
> [1] https://doc.dpdk.org/guides/prog_guide/event_timer_adapter.html
> [2] https://doc.dpdk.org/guides/prog_guide/timer_lib.html
>
> Erik Gabriel Carrillo (3):
>   timer: allow timer management in shared memory
>   timer: add function to stop all timers in a list
>   eventdev: add new software event timer adapter
>
>  lib/librte_eventdev/rte_event_timer_adapter.c | 687 +++++++++++---------------
>  lib/librte_timer/Makefile                     |   1 +
>  lib/librte_timer/rte_timer.c                  | 579 ++++++++++++++++++----
>  lib/librte_timer/rte_timer.h                  | 200 +++++++-
>  lib/librte_timer/rte_timer_version.map        |  22 +-
>  5 files changed, 972 insertions(+), 517 deletions(-)
>
> --
> 2.6.4
>


More information about the dev mailing list