From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id EB5C3A0559; Mon, 16 Mar 2020 14:38:39 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 500E31BF30; Mon, 16 Mar 2020 14:38:39 +0100 (CET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id DA082CF3 for ; Mon, 16 Mar 2020 14:38:37 +0100 (CET) IronPort-SDR: AilapkSkJMUKM0QkR550mEn8v/5axKryTvjbkcm/0KfmWQ7F0tiq46dwI4DfeLZU4o9R8rWNKV DqzgbCLDrv9Q== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Mar 2020 06:38:36 -0700 IronPort-SDR: NVOKJKjmeR1J4tl+OGWReb5ZkhwemqC5ezICod4ZWoNH5N0yK9tgQH3ED2jL9IdtLThJsFmlsz PPJOEpAAwmiQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,560,1574150400"; d="scan'208";a="233166904" Received: from silpixa00400072.ir.intel.com ([10.237.222.213]) by orsmga007.jf.intel.com with ESMTP; 16 Mar 2020 06:38:35 -0700 From: Vladimir Medvedkin To: dev@dpdk.org Cc: konstantin.ananyev@intel.com, yipeng1.wang@intel.com, sameh.gobriel@intel.com, bruce.richardson@intel.com Date: Mon, 16 Mar 2020 13:38:26 +0000 Message-Id: X-Mailer: git-send-email 2.7.4 Subject: [dpdk-dev] [PATCH 0/3] add new Double Word Key hash table 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Currently DPDK has a special implementation of a hash table for 4 byte keys which is called FBK hash. Unfortunately its main drawback is that it only supports 2 byte values. The new implementation called DWK (double word key) hash supports 8 byte values, which is enough to store a pointer. It would also be nice to get feedback on whether to leave the old FBK and new DWK implementations, or whether to deprecate the old one? Vladimir Medvedkin (3): hash: add dwk hash library test: add dwk hash autotests test: add dwk perf tests app/test/Makefile | 1 + app/test/meson.build | 1 + app/test/test_dwk_hash.c | 229 +++++++++++++++++++++++++++++ app/test/test_hash_perf.c | 81 +++++++++++ lib/Makefile | 2 +- lib/librte_hash/Makefile | 4 +- lib/librte_hash/meson.build | 5 +- lib/librte_hash/rte_dwk_hash.c | 271 +++++++++++++++++++++++++++++++++++ lib/librte_hash/rte_dwk_hash.h | 178 +++++++++++++++++++++++ lib/librte_hash/rte_hash_version.map | 5 + 10 files changed, 773 insertions(+), 4 deletions(-) create mode 100644 app/test/test_dwk_hash.c create mode 100644 lib/librte_hash/rte_dwk_hash.c create mode 100644 lib/librte_hash/rte_dwk_hash.h -- 2.7.4