From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oa1-x35.google.com (mail-oa1-x35.google.com [IPv6:2001:4860:4864:20::35]) by sourceware.org (Postfix) with ESMTPS id 1989A3850852 for ; Wed, 8 Mar 2023 15:23:49 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1989A3850852 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org Received: by mail-oa1-x35.google.com with SMTP id 586e51a60fabf-1767a208b30so17138697fac.2 for ; Wed, 08 Mar 2023 07:23:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1678289028; h=content-transfer-encoding:in-reply-to:organization:from:references :to:content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=ikhoXJ48ICzdkzh/VfqXee+4cIut1cTVlBVdMjzgvt8=; b=VQY8ERFJlOtCr2xCaiKE3VaUmdSuFyCoXyWDCIiJ7x+4K2QMMJhefLLRGLpX7QSOEG IOn11CssMsCL/m7b2bFgJvW486KJts4YJzpCq0JPkacCUTsRQC5uBL1czAdIC739BytJ kfP4Knhgu/DM4kg1DuSi0UHMs/UOhraiAntUkFraXnkV/kyBFiNEpesHEPp47DB6ozC4 O65Ox4O703/BidW3nZ6U8mVclELi+1WZU9/2nO8LzQWRgjoJMVi+lHlvh+kDA516ljYu pdKxh/xxjtrLYLpWbnb52Hyqi0nonR8S0Xx/iduZ60ECMJaMo9qkETOeDtX71vlBG5Dc YQhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678289028; h=content-transfer-encoding:in-reply-to:organization:from:references :to:content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ikhoXJ48ICzdkzh/VfqXee+4cIut1cTVlBVdMjzgvt8=; b=WQW8S/vqrWLuloDAuMjzDIbCroUPASjhecRBbkqBqxf642r99WLwJxtbTrWiICij2g uhHcF7YoadHKsm/Qx+4Ml5MPzS67pC1K+wqwvRDkHFsbx9uUNTfCUxG4nqz6gN/uc/hG +0ZrvFsvQwLAu0rx60hgOKt36MM5QHPN80IQqB9UxL1UVaXXSe6s2qTKH61r8uT1Pma1 72qlbZtUNaqCtTIs4hCwPc6JYgFSIeljJ6IRiAWDB87Tr/8mr91pZLbuIO7Bp/s71BCC 1tpP09yN7/BPQyBcIfVDc0Jciks4dztrTzDR+CUxxesO7pv9QvlBMbG5JvtbiylGsjRt PuoQ== X-Gm-Message-State: AO0yUKVLjogE5wSKjGl1qsDDASeScu0QG4uAK1+YwO09SrMU8IKVAc0X oIsWSDhntyRFQlEatfR53SqAjg== X-Google-Smtp-Source: AK7set8LwlhP5c9S/jVcD8iGbYXclTCdYsdVvmAVniq1UeBjDIbl1LbfgsHiKwAoKBVFlQIPJOblkg== X-Received: by 2002:a05:6870:d38f:b0:16a:6ab4:e870 with SMTP id k15-20020a056870d38f00b0016a6ab4e870mr1041987oag.15.1678289028338; Wed, 08 Mar 2023 07:23:48 -0800 (PST) Received: from ?IPV6:2804:1b3:a7c0:544b:655d:5559:758d:90f7? ([2804:1b3:a7c0:544b:655d:5559:758d:90f7]) by smtp.gmail.com with ESMTPSA id x21-20020a4a4115000000b0052529fbbdd8sm6267001ooa.18.2023.03.08.07.23.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 08 Mar 2023 07:23:47 -0800 (PST) Message-ID: Date: Wed, 8 Mar 2023 12:23:45 -0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH] Benchtests: Remove simple_str(n)casecmp Content-Language: en-US To: Wilco Dijkstra , 'GNU C Library' References: From: Adhemerval Zanella Netto Organization: Linaro In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 08/03/23 08:04, Wilco Dijkstra via Libc-alpha wrote: > > Remove the slow byte oriented loops. Adjust iteration count to reduce benchmark time. LGTM, thanks. Reviewed-by: Adhemerval Zanella > > --- > > diff --git a/benchtests/bench-strcasecmp.c b/benchtests/bench-strcasecmp.c > index fcfffdea42d72364d915f65cad98eaf9e11b585e..abc6a216e37b49c352fb84f723f88986c5364fb9 100644 > --- a/benchtests/bench-strcasecmp.c > +++ b/benchtests/bench-strcasecmp.c > @@ -23,28 +23,14 @@ > #include "json-lib.h" > > typedef int (*proto_t) (const char *, const char *); > -static int simple_strcasecmp (const char *, const char *); > > -IMPL (simple_strcasecmp, 0) > IMPL (strcasecmp, 1) > > -static int > -simple_strcasecmp (const char *s1, const char *s2) > -{ > - int ret; > - > - while ((ret = ((unsigned char) tolower (*s1) > - - (unsigned char) tolower (*s2))) == 0 > - && *s1++) > - ++s2; > - return ret; > -} > - > static void > do_one_test (json_ctx_t *json_ctx, impl_t *impl, const char *s1, > const char *s2, int exp_result) > { > - size_t i, iters = INNER_LOOP_ITERS; > + size_t i, iters = INNER_LOOP_ITERS8; > timing_t start, stop, cur; > int result = CALL (impl, s1, s2); > if ((exp_result == 0 && result != 0) > diff --git a/benchtests/bench-strncasecmp.c b/benchtests/bench-strncasecmp.c > index 5689a22901b918cf20bc58dc5175f552604bb878..051c17d9f78b62d22b4258e7ea04cc15759e2060 100644 > --- a/benchtests/bench-strncasecmp.c > +++ b/benchtests/bench-strncasecmp.c > @@ -23,35 +23,14 @@ > #include "json-lib.h" > > typedef int (*proto_t) (const char *, const char *, size_t); > -static int simple_strncasecmp (const char *, const char *, size_t); > > -IMPL (simple_strncasecmp, 0) > IMPL (strncasecmp, 1) > > -static int > -simple_strncasecmp (const char *s1, const char *s2, size_t n) > -{ > - int ret; > - > - if (n == 0) > - return 0; > - > - while ((ret = ((unsigned char) tolower (*s1) > - - (unsigned char) tolower (*s2))) == 0 > - && *s1++) > - { > - if (--n == 0) > - return 0; > - ++s2; > - } > - return ret; > -} > - > static void > do_one_test (json_ctx_t *json_ctx, impl_t *impl, const char *s1, > const char *s2, size_t n, int exp_result) > { > - size_t i, iters = INNER_LOOP_ITERS; > + size_t i, iters = INNER_LOOP_ITERS8; > timing_t start, stop, cur; > > TIMING_NOW (start); > >