From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id DC92A1B50E for ; Fri, 30 Nov 2018 00:35:16 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Nov 2018 15:35:16 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,296,1539673200"; d="scan'208";a="119272129" Received: from wcpqa1.an.intel.com ([10.123.72.207]) by fmsmga001.fm.intel.com with ESMTP; 29 Nov 2018 15:35:15 -0800 From: Erik Gabriel Carrillo To: pbhagavatula@caviumnetworks.com, jerin.jacob@caviumnetworks.com, rsanford@akamai.com Cc: dev@dpdk.org Date: Thu, 29 Nov 2018 17:35:11 -0600 Message-Id: <1543534514-183766-1-git-send-email-erik.g.carrillo@intel.com> X-Mailer: git-send-email 1.7.10 Subject: [dpdk-dev] [PATCH 0/3] new software event timer adapter X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Nov 2018 23:35:17 -0000 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