Received: by 10.213.65.68 with SMTP id h4csp1872413imn; Sun, 1 Apr 2018 17:54:19 -0700 (PDT) X-Google-Smtp-Source: AIpwx48FCbypAyqnomPFiQIIlLOfFRjCtnlUvYH+11B9qs16gQyW0zSC5bkqV8fnB9dDwD2Da/UJ X-Received: by 10.98.70.199 with SMTP id o68mr5768759pfi.169.1522630459869; Sun, 01 Apr 2018 17:54:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522630459; cv=none; d=google.com; s=arc-20160816; b=0mbuoKkLFcXYfURc5WxBRUTZyiC4xaXGBA/jZnPSYzC0n5YZEUUwyfpie7hbr0r4N+ Bc2JztDHaZYAo4tqdv9F44oCW0FLi+9Bh4GS9kcb8CPMtvTqCzvxBfaHWn5wfW0g/gYP VXxEdbZ8jkMip5Kr1VQB3yml1nl5hCkFdnCcE3xQdjVLQjxuRVRSg4xFJjfkGh4AVCPI CsQCSGMDPY9O9XPRe83aVneG0I75snWbYeSdPI44J9ZsnCAPpyyrgAi4FVCAinaN6vQl IleJN2c4VKl5NqpWOMbX5DM7qPkTKtdTOUADjx5j31/lBT8I0GC9Xo0P4Iy7bM6PjpyT xWBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=S2zH8uYkQut2uziKC0RLOrMo01/xduWrPmDZdje3ii8=; b=CnGVI3v4b6XMzq68eCFymSrdkqcFIA3FxhZaEGPs7CxiQSFKYElMrbN4KeiywctSt0 ix3s2QXFYvEn6CfUjsR8U9tNZMLhRkNSLd5JNA//mH+BpmFHeHeYN5QlEDNgtoKDquxl WV/ml0gyuVdGUObPZZPbfuwD4eC8yJHoLXhK8Aisbn+b1eyHWhoZm0LKCFUENy3WAMyS 6/naeev5PNsHy8jWddxpAlcXzZGoSFBFbaRQvkvI/oH2Bhv1h6vInRwJLUcXGt2C0c/l +17N3SW2PjVkm74lHWf5UQ2OmCFwSGDwmWrtMBk+tuPdzgMTKUiIXnKhaQrvLZhCq6Ww SMEA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kent-edu.20150623.gappssmtp.com header.s=20150623 header.b=xQHJ6ZOM; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kent.edu Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c1-v6si13831778plo.171.2018.04.01.17.53.40; Sun, 01 Apr 2018 17:54:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kent-edu.20150623.gappssmtp.com header.s=20150623 header.b=xQHJ6ZOM; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kent.edu Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754071AbeDBAvz (ORCPT + 99 others); Sun, 1 Apr 2018 20:51:55 -0400 Received: from mail-oi0-f41.google.com ([209.85.218.41]:36310 "EHLO mail-oi0-f41.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753988AbeDBAvx (ORCPT ); Sun, 1 Apr 2018 20:51:53 -0400 Received: by mail-oi0-f41.google.com with SMTP id t16-v6so11689588oih.3 for ; Sun, 01 Apr 2018 17:51:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kent-edu.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=S2zH8uYkQut2uziKC0RLOrMo01/xduWrPmDZdje3ii8=; b=xQHJ6ZOMvxG4jSzVbBpIqyqLGlN7cdEu8ZZX1ZduXIdlxVYjQb+MQDwRXDWirwGqK1 Wp8n/2GSkrSML2mSXdP7dOHQs9s/ZyRflByW1bnSxBMGECRs0oqaTrXrpvr3MxAz1kN/ tNEjtY2GZqD9u47qkC4FMcP2Axcy7D+VjGV8+VlzZw6+KZVXusy3BoMm+zwXJmqj10Sn 6DiQ/iFhVlg4KJBVLgs0DDKSU73KsmjaMLinhEgkSA6GP8jORepJHzN1iWUcXe4p4bkV 18ZQUmGCa9M1tdlrYzqOF1WyjioFESUQ/53HaTsuiOOJqvkZ35MTF69D1owcINYo0cW4 Q5eQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=S2zH8uYkQut2uziKC0RLOrMo01/xduWrPmDZdje3ii8=; b=TNVs4Hn7Kql1qEdMvn0TqGLf+VWrZOCZAgWwgAlvjBayBHqFrTK8sLiMF3aNsEx4oQ Rg/HtFVAIrNk9gAqQkI2hYuCzfBNPRYAKWC3iFm5aSSbGQW/kx9+9j5IOSYED8pgQIfr LqCmMQV2zmu4CCVjigCXdQXa8c2I3dVZDjxBAdAoJOBMD5RvB7qp2i8I5PQ22+dwwTjj xq58nwR30fZbJmIpPkmBm3zlwdGEN2T3G5/1hhevpVnNucOvW3rFUXh47kwTOYfr8mMX Me2q9H4ZQi5fKMhDwHLUbIZgEHvlUBWNUtZel6gR1JcMtMtkSC1bvYeL6/W7WehCVDVt LFYg== X-Gm-Message-State: ALQs6tBuObfwl6gKmuSMrCcFB9Xb2eDU9pmHu43SryqPuLQLDMZhxejU AJ2BX4fHLator5yb4CmNxe/ET1uvTY7vdi5xJJwu3Q== X-Received: by 2002:aca:5057:: with SMTP id e84-v6mr4367229oib.304.1522630312828; Sun, 01 Apr 2018 17:51:52 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:949:0:0:0:0:0 with HTTP; Sun, 1 Apr 2018 17:51:52 -0700 (PDT) In-Reply-To: <20180401115044.17f7ccb4@xeon-e3> References: <20180401183121.13022-1-agaceph@gmail.com> <20180401115044.17f7ccb4@xeon-e3> From: "Md. Islam" Date: Sun, 1 Apr 2018 20:51:52 -0400 Message-ID: Subject: Re: [PATCH] net: improve ipv4 performances To: Stephen Hemminger Cc: Anton Gary Ceph , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Yes, I'm also seeing good performance improvement after adding likely() and prefetch(). On Sun, Apr 1, 2018 at 2:50 PM, Stephen Hemminger wrote: > On Sun, 1 Apr 2018 20:31:21 +0200 > Anton Gary Ceph wrote: > >> As the Linux networking stack is growing, more and more protocols are >> added, increasing the complexity of stack itself. >> Modern processors, contrary to common belief, are very bad in branch >> prediction, so it's our task to give hints to the compiler when possible. >> >> After a few profiling and analysis, turned out that the ethertype field >> of the packets has the following distribution: >> >> 92.1% ETH_P_IP >> 3.2% ETH_P_ARP >> 2.7% ETH_P_8021Q >> 1.4% ETH_P_PPP_SES >> 0.6% don't know/no opinion >> >> From a projection on statistics collected by Google about IPv6 adoption[1], >> IPv6 should peak at 25% usage at the beginning of 2030. Hence, we should >> give proper hints to the compiler about the low IPv6 usage. >> >> Here is an iperf3 run before and after the patch: >> >> Before: >> [ ID] Interval Transfer Bandwidth Retr >> [ 4] 0.00-100.00 sec 100 GBytes 8.60 Gbits/sec 0 sender >> [ 4] 0.00-100.00 sec 100 GBytes 8.60 Gbits/sec receiver >> >> After >> [ ID] Interval Transfer Bandwidth Retr >> [ 4] 0.00-100.00 sec 109 GBytes 9.35 Gbits/sec 0 sender >> [ 4] 0.00-100.00 sec 109 GBytes 9.35 Gbits/sec receiver >> >> [1] https://www.google.com/intl/en/ipv6/statistics.html >> >> Signed-off-by: Anton Gary Ceph > > I am surprised it makes that much of an impact. > > It would be easier to manage future bisection if the big patch > was split into several pieces. Bridge, bonding, netfilter, etc. > There doesn't appear to be any direct cross dependencies. > > -- Tamim PhD Candidate, Kent State University http://web.cs.kent.edu/~mislam4/