From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x629.google.com (mail-ej1-x629.google.com [IPv6:2a00:1450:4864:20::629]) by sourceware.org (Postfix) with ESMTPS id E9A0F393A43E for ; Fri, 23 Apr 2021 07:00:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org E9A0F393A43E Received: by mail-ej1-x629.google.com with SMTP id x12so51632326ejc.1 for ; Fri, 23 Apr 2021 00:00:34 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=F9+i1cmzh6viWu/pknJzJa/f6HZ7RPG1dTRFdLmDQHo=; b=rMAXusGhXi3Hx2xuLGRKW0pM841i+8lPUmYeHoyizxoEGJ33BCARjhVTO2HJcbij4r aoDkaSaHPHWCamhE5HnaH424Gk7VOiILQaQEjoKJrAsuD2nhqXQHyb+RwFGc0a9Q8yNz r6tbmc2rlpo1Kxvoa6IQGQSOqDeN73AryPWrfbJRvt5IS1dyvqEfQSnsNzcRMe4R2Qxs cU4CFE90jEY6doFRuk8GPHf07z2yr/JpMg0vtEcsmvmK4vmthFK/AUq5e8zZxwWt+QWF DBsc39Di5KzppATSgzPQu/sNvQQas5ZfX691F/hcUN0nfxl+xX+gNkCvF9SK/JzQQJh3 Cz2g== X-Gm-Message-State: AOAM5305gXCHIBWwGp42vJlSCnxN8Ntp/hnAJxBkG3Ei/54iDfa62vd9 7uIDNQyQDeeUpijYQRsuuJLMXt3ejJNs1MWfijs= X-Google-Smtp-Source: ABdhPJxXojo23wi71Brv036YXZda2k6HazroFfSJInbb+PhBtdDFUsJHJ1/UuR+P+usdbQO5VX00onKI+Gl3rKdV3EU= X-Received: by 2002:a17:906:6d41:: with SMTP id a1mr2667488ejt.482.1619161233942; Fri, 23 Apr 2021 00:00:33 -0700 (PDT) MIME-Version: 1.0 References: <62330f82-201d-af7d-d1ed-1c8c529cc0f7@suse.cz> <20210422222906.GB5803@kam.mff.cuni.cz> In-Reply-To: From: Richard Biener Date: Fri, 23 Apr 2021 09:00:23 +0200 Message-ID: Subject: Re: State of AutoFDO in GCC To: Xinliang David Li Cc: Jan Hubicka , "gcc@gcc.gnu.org" , Eugene Rozenfeld Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Apr 2021 07:00:37 -0000 On Fri, Apr 23, 2021 at 7:28 AM Xinliang David Li via Gcc wrote: > > Hi, the create_gcov tool was probably removed with the assumption that it > was only used with Google GCC branch, but it is actually used with GCC > trunk as well. > > Given that, the tool will be restored in the github repo. It seems to build > and work fine with the regression test. > > The tool may ust work as it is right now, but there is no guarantee it > won't break in the future unless someone in the GCC community tries to > maintain it. I think if we want to keep the feature it makes sense to provide create_gcov functionality either directly from perf (input data producer) or from gcc (data consumer). Of course I have no idea about its complexity, license or implementation language ... Having the tool third-party makes keeping the whole chain working more difficult. Richard. > Thanks, > > David > > On Thu, Apr 22, 2021 at 3:29 PM Jan Hubicka wrote: > > > > On 4/22/21 9:58 PM, Eugene Rozenfeld via Gcc wrote: > > > > GCC documentation for AutoFDO points to create_gcov tool that converts > > perf.data file into gcov format that can be consumed by gcc with > > -fauto-profile (https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html, > > https://gcc.gnu.org/wiki/AutoFDO/Tutorial). > > > > > > > > I noticed that the source code for create_gcov has been deleted from > > https://github.com/google/autofdo on April 7. I asked about that change > > in that repo and got the following reply: > > > > > > > > https://github.com/google/autofdo/pull/107#issuecomment-819108738 > > > > > > > > "Actually we didn't use create_gcov and havn't updated create_gcov for > > years, and we also didn't have enough tests to guarantee it works (It was > > gcc-4.8 when we used and verified create_gcov). If you need it, it is > > welcomed to update create_gcov and add it to the respository." > > > > > > > > Does this mean that AutoFDO is currently dead in gcc? > > > > > > Hello. > > > > > > Yes. I know that even basic test cases have been broken for years in the > > GCC. > > > It's new to me that create_gcov was removed. > > > > > > I tend to send patch to GCC that will remove AutoFDO from GCC. > > > I known Bin spent some time working on AutoFDO, has he came up to > > something? > > > > The GCC side of auto-FDO is not that hard. We have most of > > infrastructure in place, but stopping point for me was always difficulty > > to get gcov-tool working. If some maintainer steps up, I think I can > > fix GCC side. > > > > I am bit unsure how important feature it is - we have FDO that works > > quite well for most users but I know there are some users of the LLVM > > implementation and there is potential to tie this with other hardware > > events to asist i.e. if conversion (where one wants to know how well CPU > > predicts the jump rather than just the jump probability) which I always > > found potentially interesting. > > > > Honza > > > > > > Martin > > > > > > > > > > > Thanks, > > > > > > > > Eugene > > > > > > > > >