From patchwork Sat Nov 10 18:55:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Honnappa Nagarahalli X-Patchwork-Id: 150742 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1322342ljp; Sat, 10 Nov 2018 10:56:09 -0800 (PST) X-Google-Smtp-Source: AJdET5cIsCCHnIyvQeXOw/Ev5GH6MTUsNXmRpSe7kZ3D0uIHOUh0kD7ct7aEIerj4eIQpGWsPOL6 X-Received: by 2002:a1c:104:: with SMTP id 4-v6mr3039598wmb.69.1541876169493; Sat, 10 Nov 2018 10:56:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541876169; cv=none; d=google.com; s=arc-20160816; b=nj6nCQhp4U5D1UoiCWAIh7dDc2geq7I0sRQ13trJ+nej+9gvD5P57o/All6VcKdtCQ tWn2fF/C6ucfhjLGXPtJTsQ72PbnA4j5NM8i3m5rDaYBDD+axIOxJoZNhHrXe2rT8DE0 y7smyTFkV2EmqTgpJsoiFaLqyCH4iVReIcJ9nLhcpWI763ZvCgt/PlttVHRz4QV8zJF9 mE1mPgYZ6wNJMVT1gu16Yi6R2kwLYGxNJK19RobdqLh3R0FXl849WuQOcGkjUOXYEaf4 l3fC9skVfwLk5Ku2L9nceCOV0AOEkPjDJFigDDFQWHuMkS8dhNRmSK8xFw4bF4eyyO/u zp6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:cc:to:from; bh=okBiKqfGKvSWZ95aucL92tSrEN/gy/u8pGK88uJC0Zk=; b=e6qRDhvkqHb6Ta6IyxLwnM8jDwzwthnI+z7Jyjb3mf0Z3cY0CTRik8+8dSDMCNKfYU e78gyxoGsUqtHAHDhTzcmJg5lLQzhoyYH4OelvndTeKW8lTIOjI3ydGJCBx6bgivAVWW 3brr6kUhPRX/KsXb6P+qqhuGZkxUvw8O7nvWSiEiVrSIUYQa2tgA/kkITSMkS6QP+iTL tiDqdKpmcBUPxQtaK0MpgEmEI8+Ym5N6JnlWkkIwSiki3lUUXDPH4oxllbg2/X/u6PxZ A6MsCD5sdHCDGE121Yf0LtfV9WYxr9Yqq4HON9TrJOkY3u1zTCaQV/Xjix12uq/+V1ff IU/Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org Return-Path: Received: from dpdk.org (dpdk.org. [92.243.14.124]) by mx.google.com with ESMTP id m13-v6si10860872wrg.111.2018.11.10.10.56.08; Sat, 10 Nov 2018 10:56:09 -0800 (PST) Received-SPF: pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) client-ip=92.243.14.124; Authentication-Results: mx.google.com; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B33F42BCE; Sat, 10 Nov 2018 19:56:07 +0100 (CET) Received: from foss.arm.com (foss.arm.com [217.140.101.70]) by dpdk.org (Postfix) with ESMTP id B1FE2239 for ; Sat, 10 Nov 2018 19:56:05 +0100 (CET) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 83205EBD; Sat, 10 Nov 2018 10:56:04 -0800 (PST) Received: from qc2400f-1.austin.arm.com (qc2400f-1.austin.arm.com [10.118.14.34]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id F2A593F5C0; Sat, 10 Nov 2018 10:56:03 -0800 (PST) From: Honnappa Nagarahalli To: bruce.richardson@intel.com, pablo.de.lara.guarch@intel.com Cc: dev@dpdk.org, jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com, chaozhu@linux.vnet.ibm.com, yipeng1.wang@intel.com, dharmik.thakkar@arm.com, gavin.hu@arm.com, honnappa.nagarahalli@arm.com, nd@arm.com Date: Sat, 10 Nov 2018 12:55:33 -0600 Message-Id: <20181110185534.5444-1-honnappa.nagarahalli@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181109163917.16845-1-honnappa.nagarahalli@arm.com> References: <20181109163917.16845-1-honnappa.nagarahalli@arm.com> Subject: [dpdk-dev] [PATCH v2 0/1] hash: separate lf and rw lock lookup code paths 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" The lock-free algorithm has caused significant lookup performance regression for certain use cases. The regression is attributed to the use of non-relaxed memory orderings. To address the issue, 2 versions of the lookup functions are created. One that uses the RW lock and the one that is lock-free. This restores the performance regression caused for use cases that used RW lock version of the lookup function. v2: 1) Adjusted the function call to take the lock in __rte_hash_lookup_with_hash_l (Jerin) 2) Squash all the intermediate commits into a single one Honnappa Nagarahalli (1): hash: separate lf and rw lock lookup code paths lib/librte_hash/rte_cuckoo_hash.c | 304 ++++++++++++++++++++++++++++-- 1 file changed, 290 insertions(+), 14 deletions(-) -- 2.17.1