From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by sourceware.org (Postfix) with ESMTPS id 6F7F13858D20 for ; Thu, 27 Apr 2023 06:53:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6F7F13858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=suse.cz Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 32FC721A2F; Thu, 27 Apr 2023 06:53:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1682578437; h=from:from:reply-to: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=mH3DvCqRyIbXYU2Gy3xEUac0oC2VRoHBmYBYvJuUIAs=; b=OfgLmeNtWOqzHw3an+HOLa+RKRM/s86fQmlZD38UghzeA5hlwLRzvY5POx7q01ZIRdEtGw KQTYDNmzdF5g3M6NYuApdM4SgJIS2uzxxLCzH7uPTMQZMboEQkxuhfbG9sT5tbpba+sdXF LEh87xSx8eEOs69VXbLb0tAJ+nZ/2dk= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1682578437; h=from:from:reply-to: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=mH3DvCqRyIbXYU2Gy3xEUac0oC2VRoHBmYBYvJuUIAs=; b=e+2WzNc8sF0CbfAw7uYBeJ0UtWD1WlCCHukgi2fZVCEA4978RA07ln+6IL329qIx5CcHSr C21+XHgdmi1nq+CQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 1E7C8138F9; Thu, 27 Apr 2023 06:53:57 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id Jf6BBgUcSmR2FwAAMHmgww (envelope-from ); Thu, 27 Apr 2023 06:53:57 +0000 Message-ID: Date: Thu, 27 Apr 2023 08:53:56 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: [COMMITTED 3/5] Add sbr_lazy_vector and adjust (e)vrp sparse cache To: Andrew MacLeod , gcc-patches Cc: "hernandez, aldy" References: Content-Language: en-US From: =?UTF-8?Q?Martin_Li=c5=a1ka?= In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,SPF_HELO_NONE,SPF_SOFTFAIL,TXREP,T_SCC_BODY_TEXT_LINE 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 4/26/23 21:26, Andrew MacLeod via Gcc-patches wrote: > This implements a sparse vector class for rangers cache and uses it bey default except when the CFG is very small, in qhich case the original full vectors are faster.  It works like a normal vector cache (in fact it inherits from it), but uses a sparse bitmap to determine whether a vector element is set or not.  This provide better performance for clearing the vector, as well as during initialization. > > A new param is added for this transition "vrp_vector_threshold" which defaults to 250.  Anything function with fewer than 250 basic blocks will use the simple vectors.  Various timing runs have indicated this is about the sweet spot where using the sparse bitmap overtakes the time required to clear the vector initially. Should we make ranger live across functions in the future, we'll probably want to lower this value again as clearing is significantly cheaper. > > This patch also rename the "evrp_*" params to "vrp_*" as there really is not a serperate EVRP pass any more, its all one vrp pass.   Eventually we'll probably want to change it to vrp1, vrp2 and vrp3 rather than evrp, vrp1  and vrp2.    But thats a task for later, perhaps when we reconsider pass orderings.. > > Bootstrapped on x86_64-pc-linux-gnu with no regressions.  Pushed. > > Andrew Hello. Please adjust also the documentation for the params in gcc/doc/invoke.texi. Thanks, Martin