From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ig0-f175.google.com (mail-ig0-f175.google.com [209.85.213.175]) by dpdk.org (Postfix) with ESMTP id 618A7567E for ; Fri, 7 Aug 2015 19:07:08 +0200 (CEST) Received: by igk11 with SMTP id 11so35642146igk.1 for ; Fri, 07 Aug 2015 10:07:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=MiD+PgIg44SmrfB72UVma0If4P3gxkqyApuQXpOGPww=; b=B+Vnnq+j8GJIAy6ZQown6bh1aUad3j8PLEs5VX5U2fwgZGuONNYK+flrYTwkrWHxSS acJeWk9Ek0cyaxs+ZSmZrklyg1g2LrYJMihFeOMTWUDc6RIcGpThlTvbYIu38EBpRqJt wUZRwpacqvTKPWiw08AxQ58yjVog+NRWLnLS2XQ/sHqP+r+xJlU31B9+OcrcTUjmR1Ib 98gom1BHBPx3uavRJMugXyObm82bUEWVYdNiru7bxb3O3aTCMAeBcRpO+x9VSmZp6vc4 QwPLd6tfCLz4zhnMiIXrjTaGwO+GbgM4onT0oDbHiLrcdMmUTbVqBoLr8kgK3cIzuwA0 qq+g== MIME-Version: 1.0 X-Received: by 10.50.4.41 with SMTP id h9mr4576802igh.10.1438967227673; Fri, 07 Aug 2015 10:07:07 -0700 (PDT) Received: by 10.36.194.129 with HTTP; Fri, 7 Aug 2015 10:07:07 -0700 (PDT) Date: Fri, 7 Aug 2015 10:07:07 -0700 Message-ID: From: Gopakumar Choorakkot Edakkunni To: dev@dpdk.org Content-Type: text/plain; charset=UTF-8 Subject: [dpdk-dev] Performance of rte_ring APIs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Aug 2015 17:07:08 -0000 Hi All, I have an extremely simple test - I have just one single DPDK EAL thread which pulls packets from one 10G port and just puts the packet exactly as is (no changes) on another 10G port - I get 9.5million pps, so far so good. So its like this dpdk_rx dpdk_tx 9.5 Millionpps Now I do the below and the performance comes down to like 4 Million pps, less than half ! dpdk_rx rte_ring_mc_dequeue_bulk(my_ring1, my_array, nb_rx) dpdk_tx rte_ring_mp_enqueue_bulk(my_ring1, my_array, nb_rx) Note that I do nothing with the things I dequeue from the ring, I just enqueue it back. So is there any gotchas in using these rings ? I am sure I am missing something, it cant drop from 9.5Mpps to 4Mpps just because of a dequeue/enqueue ? Rgds, Gopa.