From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Hemminger Subject: Re: [PATCH v3] Implement memcmp using Intel SIMD instrinsics. Date: Tue, 13 Oct 2015 17:32:05 -0700 Message-ID: <20151013173205.38159cd6@xeon-e3> References: <1431979303-1346-1-git-send-email-rkerur@gmail.com> <1431979303-1346-2-git-send-email-rkerur@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org To: Ravi Kerur Return-path: Received: from mail-pa0-f43.google.com (mail-pa0-f43.google.com [209.85.220.43]) by dpdk.org (Postfix) with ESMTP id E58008D9B for ; Wed, 14 Oct 2015 02:31:54 +0200 (CEST) Received: by pabrc13 with SMTP id rc13so36147723pab.0 for ; Tue, 13 Oct 2015 17:31:54 -0700 (PDT) In-Reply-To: <1431979303-1346-2-git-send-email-rkerur@gmail.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Mon, 18 May 2015 13:01:43 -0700 Ravi Kerur wrote: > This patch implements memcmp and use librte_hash as the first candidate > to use rte_memcmp which is implemented using AVX/SSE intrinsics. > > Tested with GCC(4.8.2) and Clang(3.4-1) compilers and both tests show better > performance on Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz, Ubuntu 14.04 > x86_64 shows when compared to memcmp. > > Changes in v3: > Implement complete memcmp functionality. > Implement functional and performance tests and add it to > "make test" infrastructure code. > > Changes in v2: > Modified code to support only upto 64 bytes as that's the max bytes > used by hash for comparison. > > Changes in v1: > Initial changes to support memcmp with support upto 128 bytes. > > Signed-off-by: Ravi Kerur I think this idea is best taken over to glibc not here. The issue is that Gcc default version of memcmp inline is bad and that is what needs to be fixed. See later discussion in email thread with Gcc intrinsic developer.