From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 63C42DE5 for ; Wed, 25 Jan 2017 20:04:08 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga103.jf.intel.com with ESMTP; 25 Jan 2017 11:04:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,285,1477983600"; d="scan'208";a="926603852" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.237.220.38]) ([10.237.220.38]) by orsmga003.jf.intel.com with ESMTP; 25 Jan 2017 11:04:06 -0800 To: Sergey Vyazmitinov , olivier.matz@6wind.com References: <1484801219-1312-1-git-send-email-s.vyazmitinov@brain4net.com> Cc: konstantin.ananyev@intel.com, stephen@networkplumber.org, yuanhan.liu@linux.intel.com, dev@dpdk.org, mirqus@gmail.com From: Ferruh Yigit Message-ID: <8b1922fa-f9c2-26c0-2179-ac26c9dbf762@intel.com> Date: Wed, 25 Jan 2017 19:04:05 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: <1484801219-1312-1-git-send-email-s.vyazmitinov@brain4net.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] [PATCH v6 0/2] kni: use bulk functions to allocate and free mbufs 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: Wed, 25 Jan 2017 19:04:09 -0000 On 1/19/2017 4:46 AM, Sergey Vyazmitinov wrote: > Optimized kni_allocate_mbufs and kni_free_mbufs by using mbuf bulk functions Hi Sergey, Although I found this patch and its idea useful, performance test result is showing a performance lose after this patch. In my test setup [1] the performance drops from ~1.88Mpps to ~1.6Mpps. What are your test results, are you observing a performance gain? To analyze the test result, I split the kni patch into two, -it may be good idea to split these in patchset too-, bulk free and bulk alloc. It looks like bulk free does not make any difference. This may be because bottleneck is somewhere else. On the other hand, bulk alloc is causing the performance drop, but not mainly because of using bulk mbuf alloc, instead because of alloc logic modification. It seems cost of checking free space of the fifo is more than allocating a fix number of mbuf, fill fifo until it gets full and free remaining mbufs. I will add more comment into patch itself, and I have another idea, which looks like giving better result. Thanks, ferruh [1] - lo_mode_fifo_skb - single kthread, binded to a core - single port, connected to traffic generator > > Sergey Vyazmitinov (2): > kni: add bulk function to free mbufs > kni: Use bulk functions to allocate and free mbufs > > lib/librte_kni/rte_kni.c | 47 +++++++++++++++++++---------------------- > lib/librte_kni/rte_kni_fifo.h | 18 ++++++++++++++++ > lib/librte_mbuf/rte_mbuf.h | 49 +++++++++++++++++++++++++++++++++++++++++++ > 3 files changed, 89 insertions(+), 25 deletions(-) >