From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from na01-obe.outbound.protection.outlook.com (unknown [52.101.56.16]) by sourceware.org (Postfix) with ESMTPS id 2102C385AE46 for ; Wed, 27 Jul 2022 18:38:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2102C385AE46 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gEaZUzUFW2Rp1rmoZsEUNcW7HLnGM3P7W3gOCk1dpxef3e6ktL+LoaHoa1ZH5FGke0c0FJa/Y0V5fmLDn7GRlJymR7HximxZQbOZBOoVQqldjb/VojQdSJc+//dk52WSA+WAcxcl/WsGxvs/ZQtGKpfk3Y+yiz4W2i0zKcVrfzpln4pf5THCmi12yqxeKRUSwM+LD9wQ4boiAqxwimanOQPoP+GtAt/TBAnJfBru03fpL1MTBW7FWnqaMab5j7K3myIWcyWbSLWy+NoXx2xRJ5eZZUvpVPBCDGcCbXO+rI4lR40YKAs1BAF16t7/+hBVGkhDVAC9HUyU0HrZiuxZ0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IkD2uIzEN8xvTACgoSeHwk7LENiqHimvoaAJfPBirEw=; b=c3mGYabsmCvUptZ1p15cA2zFQJG3Mh4jYMqG6xdSlit4N0F/MZ3Ft/XheOyB4ea6siEBKfdIvv/O2q35gSc1YSyIdXMLoKA9qbQIoexuiKvFi8h5TYPF10QN+UzY/nIAn+Fha1Hiiba9gFObYdjPBX+GcrkeBX+lbj395/c1riCW8jNjk+7qXVYGwHnbGkwo6iMCYVAJGQ2r5Mm+56xDPDpPxHHjDyrQQpevv8xZWgsV6Gdu0yCdUMYwUm8EiPnvp66PlUobq+PYJIge6ndx3FkdRxsoyyK8Ivgi1+8Z7jRlQbwMyGb810A5ASP4CgcnzzqhE5lrVUGEpAh3QBmjXg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none Received: from DM5PR21MB1767.namprd21.prod.outlook.com (2603:10b6:4:a7::39) by DS7PR21MB3269.namprd21.prod.outlook.com (2603:10b6:8:7d::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.1; Wed, 27 Jul 2022 18:38:11 +0000 Received: from DM5PR21MB1767.namprd21.prod.outlook.com ([fe80::6050:eecb:f17e:3c8]) by DM5PR21MB1767.namprd21.prod.outlook.com ([fe80::6050:eecb:f17e:3c8%9]) with mapi id 15.20.5504.001; Wed, 27 Jul 2022 18:38:10 +0000 From: Eugene Rozenfeld To: Xionghu Luo , Andi Kleen , Joseph Myers , Jan Hubicka , gcc Subject: RE: [EXTERNAL] Re: State of AutoFDO in GCC Thread-Topic: [EXTERNAL] Re: State of AutoFDO in GCC Thread-Index: AQHYoSwDrvTft2hTz0KNU80j7i7NwK2RbssAgAAC2ICAARnw8A== Date: Wed, 27 Jul 2022 18:38:10 +0000 Message-ID: References: <20210429054025.GB4032392@tassilo.jf.intel.com> <4d005159.55ea.1791e171ab9.Coremail.172060045@hdu.edu.cn> <875z0378j1.fsf@linux.intel.com> <67df7dbb.5eae.1794bba0ca3.Coremail.172060045@hdu.edu.cn> <7c802b11-857e-78eb-c2e8-0a3044817793@linux.intel.com> <20210509170121.GE25641@kam.mff.cuni.cz> <20210510172121.GT4032392@tassilo.jf.intel.com> <79c0b451-c716-7e1b-9179-1562e97411af@gmail.com> <5660725f-1b1d-99d7-e0ae-be9e5d782128@gmail.com> In-Reply-To: <5660725f-1b1d-99d7-e0ae-be9e5d782128@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=53138d1f-cf5a-4010-9c82-9f4728e12797; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2022-07-27T18:30:34Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c97820b5-fe32-4b91-5ea0-08da6fff2845 x-ms-traffictypediagnostic: DS7PR21MB3269:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 3DKe3UenzFf7nQgbitp+Wxo5NGJaLlqfLPWJZG4G1So8EhLL/WZTWbdgk8fM7Vhsh9J+shlonwcT8H+cTddA2NDWXOSaTAa/nZekUFXRcbUnDFd+N6Oj5VbmDaQaVlN8Klci1uDug5g5ZkJfdgQf1ppmL06w/38LL1RsiNJ7ZjlBMsZAqF/F4+IyFIPCsJ2O+wUzYw+mz/ovVCxjMwvGY0TeHKYT3dm40E2nyc9xuHpZKlHG9n4EYxqOXZwq+rY85Iw8WJ0OeedG5Q32h2UOpBH5+O0mdgLjkPEaMaw2t2z8nHyN2E5ZIUZRbkhbVHm89J+rbTK6OmFK2cPAFLbduQAzZ2+pyK0jf3nTVlvpvrhREQhcV08/Izd9Aqu0chHHz8dHEZ3EPe2U16U6GtS0Y52QBI9X+GIhzJkZ+EPtPGCG1OFYvJE5tKdKVO3aD2qnRcOnt7+1Gl7eIjGHuDacTqsbl21BG56B6Eh5HQBan3TCFFvWDfJvfvV4qW084/aQlxvaCI47g/05/LMCWq17lB/xYBoksduYqFNY7SzS8jUzbhcfRyyl6e1LZMBpd5/Iwh6iNAONxJ07XJ0SerAtIaepFI7ts7yAvPB3Qd7igZRF9svuo9j12AsDWfYm7jOrt3d3b8+MB90z46IX5QguwJ34Mt5VgeT5FieCUsePbGTuiiyT3KFfMSKYTUZp9JXKWFNNkcIPT+ZpvT46qwfQc7sEJliLBaKNOCRqJ2eRSSEDffRsotspeVZo3WMSSCwtU0v7gvOzfmJ/CkEUGYhzmlFHlu9O4mHpKxtcgLDSoQWQg7RfFzs1PODkX73HGUw/URwr5BnC2xtf4MiJ4TF0g1phyRzdT911SFTJNTsMcqI+E8kBbIGPARLbt1H5MPbD9neZ6H/ZHTLZBNgRv3LdFSedNqDwGBcIghmZKkV81S4= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM5PR21MB1767.namprd21.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(366004)(396003)(39860400002)(346002)(376002)(136003)(451199009)(83380400001)(82950400001)(33656002)(71200400001)(9686003)(38070700005)(8936002)(38100700002)(82960400001)(122000001)(186003)(86362001)(966005)(6506007)(52536014)(316002)(7696005)(110136005)(10290500003)(5660300002)(8990500004)(66446008)(41300700001)(66476007)(478600001)(8676002)(64756008)(66946007)(66556008)(55016003)(2906002)(53546011)(76116006); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?QO9MX6u1x8xBjBZYbYbJFBAuz+z5313WeMQlmF9MqGPpRR0Z7swqbfC28loy?= =?us-ascii?Q?TAEO9iPhhuvuz76KNnTWmLtfq4R5MDh4BO/+YieXoo9qynVCEEonMKKtSJLL?= =?us-ascii?Q?KJEw2cyfyR+nbaspimHLFi7Bi4wKSES02gtr6f9rdvpTV0DG4c7dYa39lsfY?= =?us-ascii?Q?7unhAmSoBZJi+nDY3XkYfMoW22UYA3GUveLsNWS6jQvHh9axK1V0Cv2Nd3yz?= =?us-ascii?Q?tVps5Y4QmRRq/nuiFQhlQXlLPGeIVX69BPgrqY+ZzbEj6Ls8TPjCEy+9jsrz?= =?us-ascii?Q?REOT0PjNNn10fEzzewZ6X2Z3cSuaidsUccf4sqYnx7FFESCMm3TfNi6/wE6x?= =?us-ascii?Q?uzaGJedkbLGAiNY0DiG47FS6w+H7Y5lk0/MPDCb1Jbt/pf7bQ9Df29wy19HZ?= =?us-ascii?Q?svx9K+gwZnmqcJV9n/tElPIvqmDf3RVu7F2dKbaE6NmRiwaPxpN3/CspAyFo?= =?us-ascii?Q?oQTl9EdDzsIGfpiMW49nBLjDaXUlBB+KLmYfEB8jtXvEXthSf3KUZg3drGYA?= =?us-ascii?Q?9gbkUJyh7YD0KeC47QaWecyLuyEDSX3lIZUjo7TqFoRfoAgwncF0UjEh8UEN?= =?us-ascii?Q?teDRHTwSj1nHRawC0XaDBWp4fz7AppA9KM4DQ8cwh71DGk6penWmUwXZiA9z?= =?us-ascii?Q?T/Q6BoOsEb1uDk2vi5g1s6bHjZtfNgwDwmFxWMebdefOokBVX8fhFVMkI9CZ?= =?us-ascii?Q?48iY958yC0on9CQTakXF/M5itWlRNkINPfyA/nfkd2cb6xIg6t8vphA5U1oA?= =?us-ascii?Q?C86rxbKghwveLPBh8eWfhzspU1C27uI+5uz5Ril//668OC2GmPQd7QK74rSK?= =?us-ascii?Q?52MNyZ+3DBlXakiWja5mS1xEQNV02k7VGqKHmRRdonzDSrhpcisoUZqnuCJR?= =?us-ascii?Q?PLPNJTxeQLevMbKd7tf5p5jF+Qv7YAqUEwOzxLwKRcdYu/WmYGRzk11KQQWE?= =?us-ascii?Q?/aTR9kg0/zENtmlN17jujdBjCbEUCMHeJv+rZAKIJOZ+SdJhAh9z9F+cBumJ?= =?us-ascii?Q?wAHzQCvYeGnR6ltKJSNGCDfxabTmQJpvhb4/7Yh2HdNdui6fsBOa/HQ7Meyt?= =?us-ascii?Q?w0zpmi7SibPS92M6U0tlDMsX5Mf0D7g1hVOiXFwDKpiB/t5++UlH0znMBHxu?= =?us-ascii?Q?C+/8X9DUqQDkgsUDId3L4ygvvOGddiQ+r+ZFg80eiJCm+gMDCIRgZauD4627?= =?us-ascii?Q?otuIYOgcJiBv+K66mZC7j4tcG41vrcIoA6EVSulRDQK11bjRo4PUGqwyJff7?= =?us-ascii?Q?iiw9vAJ8mFtrvaO3qz66/nAbGRd5ZXjILvygPW0RKA6osmMnuGBn1cG6yjxr?= =?us-ascii?Q?7st3odjroOmeHKa6h4MRuy5hpsJNGajAqWw/DgUr63QfSxVvTZocfKAJLMm7?= =?us-ascii?Q?xGnMinCefZsNdEqpNZd3GecHmMngF2YNLaASD83dzLfbFK6kHQMvYiIujpi0?= =?us-ascii?Q?O4E4wFuvshg96xGlCH3CxM77rl86SUNo4gg8X0sgAFBvycZ5gymBQ66A+2bT?= =?us-ascii?Q?KHhVB0YqqIZ5cPYwNZ9OOIanpBA4/ikHg812adRa4t91cT13cHOlzhdU1b0g?= =?us-ascii?Q?L14PeiiKphiOl6LcWG18yNw57kbOb3wETGEbHxj9QHE9n75+OtvOU/E5KrTc?= =?us-ascii?Q?DaHBMzj06mbSkyQBT7PirB+jdh24jUniZzdF8zpaDCdv?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM5PR21MB1767.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c97820b5-fe32-4b91-5ea0-08da6fff2845 X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2022 18:38:10.9012 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: XWpwoN24T1nW7s5Sm/r+WA7XVNEnFFe5aGgfvt0iZiwQKfK8s1sW3r16YlMxdT9KHdn0Yi2SyH36mmQKhAPfHg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR21MB3269 X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, KAM_LOTSOFHASH, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) 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: Wed, 27 Jul 2022 18:38:14 -0000 Hi Xionghu, Yes, I'm pretty sure both of the fixes you mentioned are applicable to GCC = 10. I'm not sure what the bar is for backporting fixes. Jan, can you comment on that? The fixes that Xionghu mentioned are: Fix indirect call inlining with AutoFDO https://gcc.gnu.org/git/?p=3Dgcc.git;a=3Dcommit;h=3D285aa6895d479bed8e72ad= 363290846645b6faa0 AutoFDO: Don't try to promote indirect calls that result in recursive dire= ct calls https://gcc.gnu.org/git/?p=3Dgcc.git;a=3Dcommit;h=3Dba125745d9e9fe90a18a2a= f8701b3269c5fdd468 Thanks, Eugene -----Original Message----- From: Xionghu Luo =20 Sent: Tuesday, July 26, 2022 6:41 PM To: Eugene Rozenfeld ; Andi Kleen ; Joseph Myers ; Jan Hubicka ; gcc Subject: [EXTERNAL] Re: State of AutoFDO in GCC [You don't often get email from yinyuefengyi@gmail.com. Learn why this is i= mportant at https://aka.ms/LearnAboutSenderIdentification ] On 2022/7/27 09:31, Xionghu Luo wrote: > > > On 2022/7/27 04:12, Eugene Rozenfeld via Gcc wrote: >> Hello GCC community. >> >> I started this thread on the state of AutoFDO in GCC more than a year=20 >> ago. Here is the first message in the thread: >> https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgcc >> .gnu.org%2Fpipermail%2Fgcc%2F2021-April%2F235860.html&data=3D05%7C0 >> 1%7CEugene.Rozenfeld%40microsoft.com%7Ccda1f6374c584732950e08da6f7126 >> 83%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637944829019804556%7C >> Unknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1 >> haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3Dt%2B94vOYKb8SDZ9i86Fnin >> iYXt7LTGXqbrbftH1TVqEs%3D&reserved=3D0 >> >> Since then I committed a number of patches to revive AutoFDO in GCC: >> >> Fix a typo in an AutoFDO error >> string> F%2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3D23691ddd3aa >> 3ffe55892b2bff54f9a15a89de2b4&data=3D05%7C01%7CEugene.Rozenfeld%40m >> icrosoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf86f141af91a >> b2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWFpbGZsb3d8ey >> JWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C30 >> 00%7C%7C%7C&sdata=3D4WD%2FgKxeXEFz7V6pcqDsYxvAbSOP3ldxXHb%2FoMxV5kc >> %3D&reserved=3D0> >> >> Update gen_autofdo_event.py and >> gcc-auto-profile.> =3Dhttps%3A%2F%2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3D >> 01d402c5e0ac1ddf5618bbe316b50067625fda46&data=3D05%7C01%7CEugene.Ro >> zenfeld%40microsoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf >> 86f141af91ab2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWF >> pbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6 >> Mn0%3D%7C3000%7C%7C%7C&sdata=3DTA%2FhV%2FKsRF3MUZmUL%2FpTWbESdx03VK >> PIudXrrBjAMvQ%3D&reserved=3D0> >> >> Fixes for AutoFDO >> tests> %2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3Df9ad3d5339fa >> aaed6e15a7b27d90fbc66eb72f37&data=3D05%7C01%7CEugene.Rozenfeld%40mi >> crosoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf86f141af91ab >> 2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWFpbGZsb3d8eyJ >> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C300 >> 0%7C%7C%7C&sdata=3DAvWCTytUxlcXq%2BpjkWJmhkmV0nH%2Fn0CzC4alU9XA9%2F >> 4%3D&reserved=3D0> >> >> Fix indir-call-prof-2.c with >> AutoFDO> 2F%2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3D0ed093c7c3 >> f755bc1cd80e5186abeb2f5c50ee0c&data=3D05%7C01%7CEugene.Rozenfeld%40 >> microsoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf86f141af91 >> ab2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWFpbGZsb3d8e >> yJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3 >> 000%7C%7C%7C&sdata=3D3dlTtTfe4XOOm6BEy5YLWG0l3WlQdfbCyFiXs3Q7W1I%3D >> &reserved=3D0> >> >> Fixes for AutoFDO >> testing> 2F%2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3D9265b37853 >> 1391498ec1727f67a45da72a6c07e9&data=3D05%7C01%7CEugene.Rozenfeld%40 >> microsoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf86f141af91 >> ab2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWFpbGZsb3d8e >> yJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3 >> 000%7C%7C%7C&sdata=3DZWSIQ0jb6t2DZQpDb%2F7e5FqKM6KKskM%2FAYzLpxbUkp >> 4%3D&reserved=3D0> >> >> Fix indirect call inlining with >> AutoFDO> 2F%2Fgcc.gnu.org%2Fgit%2F%3Fp%3Dgcc.git%3Ba%3Dcommit%3Bh%3D285aa6895d >> 479bed8e72ad363290846645b6faa0&data=3D05%7C01%7CEugene.Rozenfeld%40 >> microsoft.com%7Ccda1f6374c584732950e08da6f712683%7C72f988bf86f141af91 >> ab2d7cd011db47%7C1%7C0%7C637944829019804556%7CUnknown%7CTWFpbGZsb3d8e >> yJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3 >> 000%7C%7C%7C&sdata=3DW8kTuSjC188BYd3fkZvCK5UxWrYutosB%2FeZnWbmAbPI% >> 3D&reserved=3D0> >> > > This "indirect call inlining with AutoFDO" patch need to be backported=20 > to at least gcc-10 as it will caused stack overflow for some cases=20 > I've met... Sorry, should be this: AutoFDO: Don't try to promote indirect calls that result in recursive dir= ect calls, Though the "indirect call inlining with AutoFDO" also need verify on old br= anches. indirect call format is updated with Martin's dynamic topn patch. > > Xionghu