From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6B7BE4545B; Fri, 14 Jun 2024 15:44:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5753040674; Fri, 14 Jun 2024 15:44:12 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id 2E9E9402D3 for ; Fri, 14 Jun 2024 15:44:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1718372649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=3ZzGIPDRLPdZd14zEWsqsF9zyo0dIfHbpUXrrhx3bw8=; b=cY2UUDEMG+6aHv/IkPxwOI4HEVIJWp08gfOtfuH4utuuQwboTKvZPshZtPfNSP+yZtXxV9 WtpnKtv+P8NEzyqJRy+095D/IUBu4xMJu0tKuLZOzJfI55rba/PJhTbqSdWSLW2rZcBRto XLaBqvWJZtz/QHPadoNdAjtD2rKu5sw= Received: from mail-lj1-f200.google.com (mail-lj1-f200.google.com [209.85.208.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-44-AHjfulXFMvS_2-pRQlvnOg-1; Fri, 14 Jun 2024 09:44:07 -0400 X-MC-Unique: AHjfulXFMvS_2-pRQlvnOg-1 Received: by mail-lj1-f200.google.com with SMTP id 38308e7fff4ca-2ebe83e7a98so16160481fa.3 for ; Fri, 14 Jun 2024 06:44:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718372646; x=1718977446; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3ZzGIPDRLPdZd14zEWsqsF9zyo0dIfHbpUXrrhx3bw8=; b=sRsdW5cl22EjhYfoyaVCCPE4vfJqvuunJBpJTmQMv5qc5BwM99sVzm9fQkenw6UX8Z 7tzapTZcpp34NrAT+8WQv4OFpDRMxWXfB5n5sET+WzOj4yhqMSJ1zmOHljcpSsVC0iY8 wcaE7gnHQ6dTCge8SxzZ6n8IN4+/uVBSSB021c9PBNQ79GE31UcLBlIlSe+5j/YaIhvT pB15wra10riulaWv6o0FpK9TDN926bQEc06tZhjnPF2aPh/9EaQ1EcklINaJtlpxuyEO U7FI2Q23CQQB5PWx0zf2Q+N6FLs5mWZIyDMb3S/eEnAoPmwSsT6/XRs+q+mMWuocOKpj 8qPw== X-Gm-Message-State: AOJu0YwVZQvgXDcVrUKkBXpCECfPg8BZsqHQVXPUDR2mc0Kb0Gw8Ni4p hIQ7wSeCISJv6kK3OVeRB136Kwxa6QaCMMy8392yxWEMITkLxPWRObTSB9L2KfCi9koSAkNy/nc YRkmY20ok50ec24iaOTxlZCcyrv8oKEGCt2pGMaDdtAq6CBhIyJMLVAhS4spmgfSCYkgPfQxs1C kNcquauaPyrSaa/Z4= X-Received: by 2002:a2e:988c:0:b0:2ea:7f5d:ed93 with SMTP id 38308e7fff4ca-2ec0e5ada81mr16351251fa.50.1718372646034; Fri, 14 Jun 2024 06:44:06 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG3Cag4fpru0T2trCNtcGLAx6EXmQ2vp9Ai+Oh21ZIfyenBcKrTqDC7PaoG0bdMRqQqxt1amj2undSnggCrhPo= X-Received: by 2002:a2e:988c:0:b0:2ea:7f5d:ed93 with SMTP id 38308e7fff4ca-2ec0e5ada81mr16351201fa.50.1718372645686; Fri, 14 Jun 2024 06:44:05 -0700 (PDT) MIME-Version: 1.0 References: <20231020165159.1649282-1-yoan.picchi@arm.com> <20240430162743.1525484-1-yoan.picchi@arm.com> In-Reply-To: <20240430162743.1525484-1-yoan.picchi@arm.com> From: David Marchand Date: Fri, 14 Jun 2024 15:43:54 +0200 Message-ID: Subject: Re: [PATCH v9 0/4] hash: add SVE support for bulk key lookup To: Bruce Richardson , Vladimir Medvedkin , Konstantin Ananyev Cc: dev@dpdk.org, nd@arm.com, Yoan Picchi X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Tue, Apr 30, 2024 at 6:28=E2=80=AFPM Yoan Picchi w= rote: > > This patchset adds SVE support for the signature comparison in the cuckoo > hash lookup and improves the existing NEON implementation. These > optimizations required changes to the data format and signature of the > relevant functions to support dense hitmasks (no padding) and having the > primary and secondary hitmasks interleaved instead of being in their own > array each. > > Benchmarking the cuckoo hash perf test, I observed this effect on speed: > There are no significant changes on Intel (ran on Sapphire Rapids) > Neon is up to 7-10% faster (ran on ampere altra) > 128b SVE is about 3-5% slower than the optimized neon (ran on a gravito= n > 3 cloud instance) > 256b SVE is about 0-3% slower than the optimized neon (ran on a gravito= n > 3 cloud instance) > > V2->V3: > Remove a redundant if in the test > Change a couple int to uint16_t in compare_signatures_dense > Several codding-style fix > > V3->V4: > Rebase > > V4->V5: > Commit message > > V5->V6: > Move the arch-specific code into new arch-specific files > Isolate the data struture refactor from adding SVE > > V6->V7: > Commit message > Moved RTE_HASH_COMPARE_SVE to the last commit of the chain > > V7->V8: > Commit message > Typos and missing spaces > > V8->V9: > Use __rte_unused instead of (void) > Fix an indentation mistake > > Yoan Picchi (4): > hash: pack the hitmask for hash in bulk lookup > hash: optimize compare signature for NEON > test/hash: check bulk lookup of keys after collision > hash: add SVE support for bulk key lookup > > .mailmap | 2 + > app/test/test_hash.c | 99 ++++++++--- > lib/hash/arch/arm/compare_signatures.h | 117 +++++++++++++ > lib/hash/arch/common/compare_signatures.h | 37 ++++ > lib/hash/arch/x86/compare_signatures.h | 53 ++++++ > lib/hash/rte_cuckoo_hash.c | 199 ++++++++++++---------- > lib/hash/rte_cuckoo_hash.h | 1 + > 7 files changed, 393 insertions(+), 115 deletions(-) > create mode 100644 lib/hash/arch/arm/compare_signatures.h > create mode 100644 lib/hash/arch/common/compare_signatures.h > create mode 100644 lib/hash/arch/x86/compare_signatures.h > Can any of you have a look at this series? Thanks. --=20 David Marchand