From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id AAA70591E for ; Fri, 2 Dec 2016 20:45:57 +0100 (CET) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP; 02 Dec 2016 11:45:56 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,288,1477983600"; d="scan'208";a="793581686" Received: from txasoft-yocto.an.intel.com ([10.123.72.75]) by FMSMGA003.fm.intel.com with ESMTP; 02 Dec 2016 11:45:49 -0800 From: Gage Eads To: jerin.jacob@caviumnetworks.com Cc: dev@dpdk.org, bruce.richardson@intel.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com, Gage Eads Date: Fri, 2 Dec 2016 13:45:55 -0600 Message-Id: <1480707956-17187-1-git-send-email-gage.eads@intel.com> X-Mailer: git-send-email 1.9.1 Subject: [dpdk-dev] [RFC PATCH] EventDev buffered enqueue API 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: Fri, 02 Dec 2016 19:45:58 -0000 This patch extends the currently proposed libeventdev API with support for buffered enqueue operations. This functionality can improve application performance when using event devices that benefit from bulk enqueue operations, but due to its architecture the application cannot easily combine its enqueue operations. For instance, consider a network application that dequeues a burst of events and then processes them individually, where each event may be processed and enqueued in a different codepath depending on its layer-3 or layer-4 protocol type. To take advantage of burst enqueues with the current eventdev API, the application would have to be modified with an ad-hoc buffering solution. This functionality can be achieved fairly simply in the eventdev itself, and in doing so reduces the amount of boilerplate code repeated among applications of the sort described. This patch applies on top of Jerin Jacob's eventdev API patchset[1]. [1] http://dpdk.org/ml/archives/dev/2016-November/050355.html Gage Eads (1): eventdev: add buffered enqueue and flush APIs lib/librte_eventdev/rte_eventdev.c | 29 ++++++++++ lib/librte_eventdev/rte_eventdev.h | 106 +++++++++++++++++++++++++++++++++++++ 2 files changed, 135 insertions(+) -- 1.9.1