Received: by 10.213.65.68 with SMTP id h4csp2001577imn; Sun, 1 Apr 2018 21:52:14 -0700 (PDT) X-Google-Smtp-Source: AIpwx49nuPm1jooF+ESfFf59lrw3OBbb4XZvsn4vvS3RW0gBLbSe43hsno8mLFw4M4rmAcstj4Vf X-Received: by 10.99.47.4 with SMTP id v4mr5518559pgv.42.1522644734827; Sun, 01 Apr 2018 21:52:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522644734; cv=none; d=google.com; s=arc-20160816; b=m8BzYSpLOnod+NtRcFEGVabK/XOf6Q7157JdHPrZTGDAi80ivYz7AX5giLmTY7LUbn SQL9W7kEjf7rrBHepVvbX1/Ea/efADZZS5uocawu5hZRzf9R1jZ2xJXCW/Z2IUIKJsr2 MbYFGrnQOF8Td+y1FwvsgC3Qu+rZaFmHF0bXzSvRQ/Wy0yZjjdc37lX54sQmCOb7Ymv1 RBvrfLl60ofTCt8296WIU1HJcWDqcXVNcnU+cQBKX1/x+nyhKLkrLcWm9CjN5I7sPZ6z M24434Dhq/qdDwgr0ljJqA8TSTaCfB/yTn49ETtCOmt3/dohI4ICRnUKtJiQYRdTFL5q 7ikw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:to:subject:dkim-signature :arc-authentication-results; bh=5WTOjwsUQ6teaRnHjBnFK2oH2tw4T3cRM66s+3YMmT8=; b=vZ1OSJEp91fgGzzwm/CSHifvvdJxuQ01JeIjuHdkvxwjlsGLMqK75t2QUb5eog/aPA DstK99H8OyRei1XSOFqAOolzY1O0g1sbkABJ0v9soa2DV0W+B2nVE+cBEQKX8hBYxnwz Jyxn3A/z5jBxBuGPVrteOTrkH3PMf6y15eQgipZR61ygvd+Y9xIGmRxLPmEoK5uWANAT 8fPJdpK2HrhkgSjCoGaD0g5Ub4epOBaAKibDXzaRcOtJG0A2GsRT/x4jQe3PIasMtFy7 PBkvCrdeMOkc71AiWYzMlw1iYJ7bbYfmJT7+geOSPmE+42BbyBWL3jMtYiyNf0F2caNi ed1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=dzvxmyFr; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l63-v6si13933911plb.466.2018.04.01.21.51.48; Sun, 01 Apr 2018 21:52:14 -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=@gmail.com header.s=20161025 header.b=dzvxmyFr; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751555AbeDBEuB (ORCPT + 99 others); Mon, 2 Apr 2018 00:50:01 -0400 Received: from mail-pf0-f182.google.com ([209.85.192.182]:36594 "EHLO mail-pf0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750729AbeDBEuA (ORCPT ); Mon, 2 Apr 2018 00:50:00 -0400 Received: by mail-pf0-f182.google.com with SMTP id g14so8780712pfh.3; Sun, 01 Apr 2018 21:50:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-language:content-transfer-encoding; bh=5WTOjwsUQ6teaRnHjBnFK2oH2tw4T3cRM66s+3YMmT8=; b=dzvxmyFr2+vD/t/lC3QbmIt2tUVmzeZKtn6E0euxv5vSysnUt1hcTP7R/4Jw21bpCh 2SBrasdNdhHGyEMJhIXwwuZRn7oZSfioLDTGn1Gq6md47QCmnozoGPujLvF1D5WUxZUo GBPGcmLtBajNAczTQ1gLC3AxgMhyyv4sDKKC9g9C8bs7Gi72aHbbXA+LnN5YmRLT7TXJ 0CfIMvPo+9XTgFzPJEhSdghEe7rSY5gOPFD2GlhDYX2utiO1dYYbg9uGd/X9bQgLxkbz JvxyEnGUXdhh5voKzg9eLFi7gYSadj+SKN5PkMM64ryEPOJ/hJO/o5b52yXOaTlUNrc/ BYxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=5WTOjwsUQ6teaRnHjBnFK2oH2tw4T3cRM66s+3YMmT8=; b=DNywJFV1IGdBq2U+0NpWvNz16vmnpCAtleMPlsKjZDG+wuGvSOzAD4CMWj1LtQWsbC vRi3kuIaTSfd6i++TR42mVb0ZKhYy7gMGX1fXtevyDfUw+XMizZySfKE52BRYHngKHwj f4cOCwb4BemWZkfKEcujFaSRHxrV5whx9PqvCmS4ptwjvu8eZcVyxUdpFoXKD1BeOtdF p2Oa7ZOX8ABXpIIlDvDWDSRKB7EjYXglBewo/ocesmQuqueXkgMR/JBHZCaAmX3Gkkfi LYOEA1htIdshbR0EplO2QYASWC9Vk5oNeOmpUiTPNT2ogF17xHtx8pd5toBtsTwsaphM QOHQ== X-Gm-Message-State: AElRT7Hyh1AWJp9/dJLyCDP9YiidHB8s4Nt9qe9z28xMZsWemsmKDkFV 4QL4ElfLbzOE7X3tcv6dxowVvRCE X-Received: by 10.99.160.67 with SMTP id u3mr5252356pgn.389.1522644599460; Sun, 01 Apr 2018 21:49:59 -0700 (PDT) Received: from [192.168.86.235] (c-67-180-167-114.hsd1.ca.comcast.net. [67.180.167.114]) by smtp.gmail.com with ESMTPSA id l80sm10157389pfb.38.2018.04.01.21.49.57 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 01 Apr 2018 21:49:58 -0700 (PDT) Subject: Re: [PATCH] net: improve ipv4 performances To: Anton Gary Ceph , netdev@vger.kernel.org, linux-kernel@vger.kernel.org References: <20180401183121.13022-1-agaceph@gmail.com> From: Eric Dumazet Message-ID: Date: Sun, 1 Apr 2018 21:49:56 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <20180401183121.13022-1-agaceph@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04/01/2018 11:31 AM, 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 > These iperf3 numbers are simply telling something is wrong in your measures or your hardware. By the time linux kernels with this patch reach hosts, they will likely use IPv6 anyway. Please do not tell the compiler that IPv6 should be slowed down in favor of IPv4. Instead, work on removing IPv4 stack from linux kernel (making it a module)