From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 6A899A0540;
	Tue, 14 Jul 2020 00:19:31 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id AA3801D57C;
	Tue, 14 Jul 2020 00:19:30 +0200 (CEST)
Received: from mail-pg1-f194.google.com (mail-pg1-f194.google.com
 [209.85.215.194]) by dpdk.org (Postfix) with ESMTP id 138121D57C
 for <dev@dpdk.org>; Tue, 14 Jul 2020 00:19:28 +0200 (CEST)
Received: by mail-pg1-f194.google.com with SMTP id w2so6659877pgg.10
 for <dev@dpdk.org>; Mon, 13 Jul 2020 15:19:28 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=networkplumber-org.20150623.gappssmtp.com; s=20150623;
 h=date:from:to:cc:subject:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=z30ZcmBrYb5lyP3S1dqERbFkdGYIiIPoKsieyZRgnxk=;
 b=QySmquHrJg6CTFam7Qgo8MXUVcLuS9dhRbupz05eqU6syCHC8KU6v0yV6mhsH/bwX6
 J2dT0t9EcnU/nUQIhY+zZiiy36oAdDuxA7K91ezfzqmnE4PYsGXa0dpOkEWQx8rOcXzQ
 YTYfX+rfK16eqKXKgrPUNkFE+Ymx6mIRH4N47aWdZuhYpEpuj9wed2c+vZFtBYp/Brn6
 FltyGEFFpbNY0cO70eJJdcTuQmC5Vq6wgdBdf3jLa75VnY3qDc69qkgwod9oBxthrZO9
 d6/kQPud3P1lKZ5K2rJEGYJXBbPctOWiEL/mq7Yj/2xHAat6nlIfeyIw5WUGsOITRaEw
 pMvA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=z30ZcmBrYb5lyP3S1dqERbFkdGYIiIPoKsieyZRgnxk=;
 b=DQP+4dMA/Ua63C4wbvb7SJltM0C2ymy3Rzo6h03csyapxFWVVB3ZfopehWV/hAeGx7
 JUcVL1WyKeHRxsnWjz/h4rtVtTgFcXF98c6hduxdUToNL2DQDMUd6y+8JeU2pODElTiO
 Aa/nbh2K130cvnOLf/Uh8MmR0KVTvcM1g+GQu+O2k7EmGjFOKL+YpRVmjI+UX0WhK1ve
 PpWxmVa+S9cIPqErtGK8M6W8OtfZ0VaziuSfYExMTVRm4s5lEl3M0nelg6HF33oAi6Cv
 4UhCbnWFrw4wth+n75poKK8JnHUtuPGxr0FN/LuzRBGf40r8JkiVIY41MvIVfQytI5eC
 EzvA==
X-Gm-Message-State: AOAM532XB8kYcgRvqfDtxr3cm9M0ovflTlG4D5x3dOvgsW2FSyN4yK7A
 iMjZxmjrJ5qZ+O8qs4fCMHn9Rg==
X-Google-Smtp-Source: ABdhPJw3Q77ihO3ykxAjmd9x10UK2AhW6EGS6XH/+S5LLqmul8fohLWILgH40CCuyNPbH76vsa4yrQ==
X-Received: by 2002:a63:2543:: with SMTP id l64mr1064720pgl.164.1594678767956; 
 Mon, 13 Jul 2020 15:19:27 -0700 (PDT)
Received: from hermes.lan (204-195-22-127.wavecable.com. [204.195.22.127])
 by smtp.gmail.com with ESMTPSA id n18sm16391109pfd.99.2020.07.13.15.19.27
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 13 Jul 2020 15:19:27 -0700 (PDT)
Date: Mon, 13 Jul 2020 15:19:19 -0700
From: Stephen Hemminger <stephen@networkplumber.org>
To: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
Cc: dev@dpdk.org, david.marchand@redhat.com, jerinj@marvell.com,
 mdr@ashroe.eu, thomas@monjalon.net, konstantin.ananyev@intel.com,
 bruce.richardson@intel.com
Message-ID: <20200713151919.1d6e88ea@hermes.lan>
In-Reply-To: <cover.1594638050.git.vladimir.medvedkin@intel.com>
References: <cover.1594389240.git.vladimir.medvedkin@intel.com>
 <cover.1594638050.git.vladimir.medvedkin@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Subject: Re: [dpdk-dev] [PATCH v6 0/8] fib: implement AVX512 vector lookup
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

On Mon, 13 Jul 2020 12:11:19 +0100
Vladimir Medvedkin <vladimir.medvedkin@intel.com> wrote:

> This patch series implements vectorized lookup using AVX512 for
> ipv4 dir24_8 and ipv6 trie algorithms.
> Also introduced rte_fib_set_lookup_fn() to change lookup function type.
> Added option to select lookup function type in testfib application.
> 
> v6:
>  - style fixes
> 
> v5:
>  - prefix zmm macro in rte_vect.h with RTE_X86
>  - remove unnecessary typedef for _x86_zmm_t
>  - reword commit title
>  - fix typos
> 
> v4:
>  - use __rte_aligned() instead of using compiler attribute directly
>  - rework and add comments to meson.build
> 
> v3:
>  - separate out the AVX-512 code into a separate file
> 
> v2:
>  - rename rte_zmm to __rte_x86_zmm to reflect its internal usage
>  - make runtime decision to use avx512 lookup
> 
> Vladimir Medvedkin (8):
>   eal/x86: introduce AVX 512-bit type
>   fib: make lookup function type configurable
>   fib: move lookup definition into the header file
>   fib: introduce AVX512 lookup
>   fib6: make lookup function type configurable
>   fib6: move lookup definition into the header file
>   fib6: introduce AVX512 lookup
>   app/testfib: add support for different lookup functions
> 
>  app/test-fib/main.c                   |  58 +++++-
>  lib/librte_eal/x86/include/rte_vect.h |  19 ++
>  lib/librte_fib/Makefile               |  24 +++
>  lib/librte_fib/dir24_8.c              | 281 +++++---------------------
>  lib/librte_fib/dir24_8.h              | 226 ++++++++++++++++++++-
>  lib/librte_fib/dir24_8_avx512.c       | 165 +++++++++++++++
>  lib/librte_fib/dir24_8_avx512.h       |  24 +++
>  lib/librte_fib/meson.build            |  31 +++
>  lib/librte_fib/rte_fib.c              |  21 +-
>  lib/librte_fib/rte_fib.h              |  24 +++
>  lib/librte_fib/rte_fib6.c             |  20 +-
>  lib/librte_fib/rte_fib6.h             |  22 ++
>  lib/librte_fib/rte_fib_version.map    |   2 +
>  lib/librte_fib/trie.c                 | 161 +++------------
>  lib/librte_fib/trie.h                 | 119 ++++++++++-
>  lib/librte_fib/trie_avx512.c          | 269 ++++++++++++++++++++++++
>  lib/librte_fib/trie_avx512.h          |  20 ++
>  17 files changed, 1114 insertions(+), 372 deletions(-)
>  create mode 100644 lib/librte_fib/dir24_8_avx512.c
>  create mode 100644 lib/librte_fib/dir24_8_avx512.h
>  create mode 100644 lib/librte_fib/trie_avx512.c
>  create mode 100644 lib/librte_fib/trie_avx512.h
> 

Did anyone else see the recent AVX512 discussion from Linus:
  "I hope AVX512 dies a painful death, and that Intel starts fixing real problems 
   instead of trying to create magic instructions to then create benchmarks that they can look good on.