From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 19E502E81 for ; Fri, 26 Oct 2018 12:12:22 +0200 (CEST) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 26 Oct 2018 03:12:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,427,1534834800"; d="scan'208";a="102861843" Received: from bricha3-mobl.ger.corp.intel.com ([10.237.221.107]) by orsmga001.jf.intel.com with SMTP; 26 Oct 2018 03:12:18 -0700 Received: by (sSMTP sendmail emulation); Fri, 26 Oct 2018 11:12:17 +0100 Date: Fri, 26 Oct 2018 11:12:16 +0100 From: Bruce Richardson To: Honnappa Nagarahalli Cc: Yipeng Wang , "stephen@networkplumber.org" , "dev@dpdk.org" , "sameh.gobriel@intel.com" , nd Message-ID: <20181026101216.GA14620@bricha3-MOBL.ger.corp.intel.com> References: <1539208085-30756-1-git-send-email-yipeng1.wang@intel.com> <1539208085-30756-4-git-send-email-yipeng1.wang@intel.com> <20181024203653.GA16476@bricha3-MOBL.ger.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Research and Development Ireland Ltd. User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [dpdk-dev] [PATCH v1 3/3] test/hash: add readwrite test for ext 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: , X-List-Received-Date: Fri, 26 Oct 2018 10:12:23 -0000 On Fri, Oct 26, 2018 at 12:23:56AM +0000, Honnappa Nagarahalli wrote: > > > > On Wed, Oct 10, 2018 at 02:48:05PM -0700, Yipeng Wang wrote: > > > This commit improves the readwrite test to consider extendable table > > > feature and add more functional tests to cover more corner cases. > > > > > > Signed-off-by: Yipeng Wang --- > > > test/test/test_hash_readwrite.c | 70 > > > ++++++++++++++++++++++++++++++++++------- 1 file changed, 58 > > > insertions(+), 12 deletions(-) > > > > > With the extension of this test case, and the addition of other test cases by > > Honnappa in the other patch sets in this release, we are building up quite a > > large set of hash table autotests, some of whose meaning and use is a bit > > obscure. Are there any hash tests that you feel could be removed at this point, > > to simplify things? > > > (this comment does not apply to this patch) > Looks like your concern is about maintenance of the test code. > IMO, we need to reduce the number of configuration flags in this library which should reduce the number of test cases. > The flags I think that are not necessary are: > RTE_HASH_EXTRA_FLAGS_TRANS_MEM_SUPPORT - The tests prove that this gives significant performance boost. IMO, if the platform supports it, it should be enabled without user consent (I am not an expert on TSX). > RTE_HASH_EXTRA_FLAGS_RW_CONCURRENCY - Most use cases require this support. Only use case where this is not required is a single thread doing both inserts and lookups. Even if such a use case is valid, the lock over head should be small. > I agree with the idea. What I suggest is that only a single flag should be needed, and that only for the uncommon case, i.e. where we do not need any locking of the hash-table. Otherwise the hash should be thread safe by default and using the most effective locking mechanism for the platform. Unfortunately, doing this requires an ABI change, but since it only should affect the create function, it should be doable with function versioning to keep backward compatibility. /Bruce