From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id D5285432CD for ; Wed, 27 Jul 2022 18:54:48 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4707068B914; Wed, 27 Jul 2022 21:54:45 +0300 (EEST) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10olkn2012.outbound.protection.outlook.com [40.92.40.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7697B68B8DC for ; Wed, 27 Jul 2022 21:54:39 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UFxm8h3h8g8iPTdQqZ+LEG83naCftzVOdJijoAuY7v5fPGcvhXTgtxnxARSW3XJJ0Ecu6VeaMwWMqmZJiCncTME4nk8Powj1+ea7saYujsXgrsd0kynesLBcry7OJfqooMIV8iCvzZItClRkSlexvhzRB5dfEk+NCPB/sIvdH/FwDhZklqIEfie1wUy02EKI5L9y9DxQC6u3pLh8syGpaqoHw/AylQv6a/cV0CavRiG18SMn6A1eQnjwHi0D266OqqyI+n68i3/Poaou5z5H1emusU4n22CGSXTt4xIPH/uzTGkM2yGZIoLTL8zQqSTHo+5voTvoyFOvj73rIC8V+g== 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=NY+g/y6HOYT2tKpGIjDRRW4ZSREJDMPPp4GA9gKzDos=; b=PERIqlU/yFsLJ+Xf3Vpokj+gr/94gdPskxd8GHU4NMfHMc7YegVlh6S8bcRAb4/EiCdNARFDBipr3/BjkCTE/W8Jr63IS+zp/+LTzrW5qvqFAx8+B9k07tZ2WadPVHsJpiTERaV8Sh4sr8jEHpSkUb8JnjNBmj4t3X96e2ykfg6r2sbd8/8Z63NSb5ENz+/JqFZUEN23rcLiuNJlK30B0nuq0+X2Cz5DzQQpPAfO3BjdqsiU/3I8gTSAupASei/2uy6pgwXwQcQHsM3k9MkapCV99ET8Q493LmHZT9YQqFp1gbLHktEBnqunOjvxfQENBRzvF5Aaba2N30bA4N1R/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NY+g/y6HOYT2tKpGIjDRRW4ZSREJDMPPp4GA9gKzDos=; b=g0krJGR4/e7N98uuuW3dnjk7LnDSd3brxymE9vMrsDt33Ysx7yKhP2YxYHYXNrwPQBmTijbl/WJYO2/G5RaVLs81eoi1uYiiUTVQNyMCbvkmAeM7NWJTUvimbq+4x7kdnuAaLKtXrt7J85lL+qqW2F+ha6V5TnyXGxv9CmfGMCOCEG1VXKtybWPnnsn00je4LVqBrUqTX/KpjRkt8SQlj4wNIzyl3+fs5uOvj6x6PEU63z/LFKGblwlY79hWhFwY3utv22mI21WjtZ+qljCXA0HX9UgnhjX00iILnAEsUW0N3Cwv1QDQiT/oPun9U05eD9fvANjZjL4CkGfrdWqMkw== Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM (2603:10b6:8:b::20) by MW4P223MB0561.NAMP223.PROD.OUTLOOK.COM (2603:10b6:303:1ed::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5482.6; Wed, 27 Jul 2022 18:54:36 +0000 Received: from DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::d9e4:ced6:ab31:c231]) by DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM ([fe80::d9e4:ced6:ab31:c231%2]) with mapi id 15.20.5482.006; Wed, 27 Jul 2022 18:54:36 +0000 From: Soft Works To: FFmpeg development discussions and patches Thread-Topic: [PATCH] enable auto vectorization for gcc 7 and higher Thread-Index: Adih3iCGbsai8yFERGe52y5L0WuErAACYtow Date: Wed, 27 Jul 2022 18:54:36 +0000 Message-ID: References: <05a46152f1b2458ea326edd9cfb6d817@amazon.com> In-Reply-To: <05a46152f1b2458ea326edd9cfb6d817@amazon.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-tmn: [/FwTLnOYQz+SToKc1AP5jsqLf7InHbDZ] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9d034740-0e81-4b80-0ca1-08da7001738e x-ms-traffictypediagnostic: MW4P223MB0561:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Mr9PjlQyOJ3T1JxUpqa4rlG27bu1o79MiAdBdHPCfjS4p6dhwm3fU7Py1NIwo7/7RMUuULaacaI65bO7fO2howRNW05MygRgmHz72mdEsXlIEjkJVB1IrF+/c5xpXR9DxWu7y1AZ3x2yUJ1fI7Da2JZjTm9Z/97R4GDtwPbNVttn2ZaVQ1aJAaKJVrrj0ohWsYqYsqG8ZoI2k1tRfPtUkWD5AYELsX0yxuFPXFGb12P5L5PnwjntwFES00+o+wfkL5R0fYL/uaskNCYA5ke1ouPlxzJi3gXJc+mn1wqFJcEjlNplDPWTE5mAeID98bKHKTVaEUNeobDJb0nwNMuSs75RAAHdSp1Me7pULRFob7RFkSm8a7t/j1bhBihjBxmgmQAJUPyO3DunU8qJXtUQZuHzjxD8mz8Gvd8lsR866UudnIpxHfRZBDlwHHRCFQU3WirSTIumJGJEYi7RF0j+eofRRfEIxCgtC3pyN5SFn8sjlkgkQUzVwG6ibc6a+NMhk9ytyARGB/VMbfJg5W7xT2J1WDExUXTKGokCA9ZN3lxQQHhCWDGjpNPcaUdi07GdlPhS1/KhEq4zflXeTCCNHdq6NSdhPyyEU+fRRVd+etFlJcCKy266krHKEveYL7nX9swG64uM07mKSV5kLzkDkEDIMPvZ5Wbx0R1rpGGWMiqjdaVUfH/8+SbCaVOvaJea x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?WVJuMlBYTTUvWkd2MzF3ZUhLM1VUOUgxZFBmQTJGcnNHaFpWSVF4UUtkaG9m?= =?utf-8?B?VXlSSUtsRytaU0tUQmtFQzBsQmtQRmFKVE43R0VxY21hWEozczJmOFhKQmFZ?= =?utf-8?B?cGRCUnptTi93QXVpN3hoUHBITWpTRlVSK2dwRm1vZTNBRWQ1dWZpMEJETnBY?= =?utf-8?B?b2plNE5kVDdtVzJ6dUIzZFNOVDNnTVl3aUhhb1lKVzhuTWZXVVpaMFo5UkF5?= =?utf-8?B?VzVEV2dDbmJsVS9DelBIMnpXNGVwZFJqRS9JRWpnbDhDREY4cFdEN1dJVHZS?= =?utf-8?B?dks3U3E5VjBVQ2d3MFhhekhFQkV2Mmw0MkVldlFZVjFUVHpCWDFpQzZYSEdt?= =?utf-8?B?THpNNnNGbm9CQmp6V3Q4bzc2bjNiUW9mRkVpeTIzbEV3M09GZVBSVmJadlIz?= =?utf-8?B?d0JwN1lFbUFlNUY1bE5WWm9vQ0FRQWJSNm12WS9GWGxzRVJOWE44bSt4d1dz?= =?utf-8?B?VTh6V0JablJLenFjRXhtQmdZTkx0Q0s1YWZpY1k1dlFSazFEMS9ydE9kZUdH?= =?utf-8?B?UjkvRkRlZmNUaDhMNkJreHJoVnF6YStrLzJLZGJTSktpTHhxTk1Pc2ZaKzR5?= =?utf-8?B?Z0F6anpscVc2QVVwUzZwOG9WM0YzQTNtdGFPeEtwcXRuV3ZNaGF0UG90L21x?= =?utf-8?B?czZlVzdmYkk5a2FGdGNaWHJkb0J1VU1ERW9KNEJNUjArTTNvdjB6WGdhNUtG?= =?utf-8?B?Q2FHK2VCUGJGQlVpOXYxQVV0QTRIN004OU5GenYrVDNpWEJrYys5cUgzRVJ1?= =?utf-8?B?RTJiMTRKQk1pTTQ0Wk1kYW5oOEt0ZVFzS0NJWFJybjhuSHMydzlxZ09TN2N6?= =?utf-8?B?YmoyanN6SXd0Z25sdGNBK0RNOTJuTGhNbTNpam9JVHF1aThySnNWZmlKV1pP?= =?utf-8?B?Y3BXYWZWbU12Y3ZMdFo3cExNdXp5OURJRG50NGxMeVFxQVhaTTdzK09YellQ?= =?utf-8?B?MVlJV1V0SWZEd3lvOEtKVklscWFGZzhkbFZlL0k2bjVhd3JDMjVjT1orak1w?= =?utf-8?B?UC9ERURYeEgwK3E0aThjdDBQczdPMHdXZkhvRjc5L1dRTGtQc1Mva3Z6WDZX?= =?utf-8?B?T0dLcnlSUmhscnEvSDIyQU1hMmd5S0lJUFE1OGl6dVpWWFFqaXBxWlBjMmFh?= =?utf-8?B?bXJZbjE2ZFZjd0ZVUUN1RWd3N21GTjhjM1cvNTNCb04renFCV3o0YnNiUHpQ?= =?utf-8?B?K2UwdzlxazZzY2IxemRWd0tRS3lxdXNndVB4Ni9saHdLaWROWW1UTm5TT0lW?= =?utf-8?B?MzVjZ0o3YW9kOEhsbWR6cFJZWkI0aGtVNUw4M3NwdkMrYXNzMGNiRmxrUHo1?= =?utf-8?B?a2ZmVTM4QXh5Z0s4S2Q0SjU2L2Exc1pabGhuN29HT0EyUU1NUEZsbG5FeHd0?= =?utf-8?B?c2FiZTlYUmJzYnpSS1hHRWFsUWl3RG0yN0pOSE15U3RpZFhTcmtDVzUrWncr?= =?utf-8?B?MjdhQmVoalM0c3RHck5WcDVRaFNJRTdzMllhcWYxS1RRd3c3TlVFZmw3THlJ?= =?utf-8?B?b29IK0pUR24zN0Y1RmYyL1FUcXZ6Tk5IOG4rRjk0VndaVmRQdTZhTk5NUzFi?= =?utf-8?B?b0xmMlBmNnFmNDhURHBOZ08rbFAwM1BmbDFBaDY2TitMOHYrZXU5YkM5enM4?= =?utf-8?B?V1MvcEg3dVdZWTlaM1hCM3l3c1Vsc0NvMWFudm1EUFVJRUFFbUltemNqb1M1?= =?utf-8?B?eVNkdW9IMlBxQUQrc0JvMUJVVkU2RXJyeHBZaU8wNXhGZE0ycVBMK2VnPT0=?= MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 9d034740-0e81-4b80-0ca1-08da7001738e X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Jul 2022 18:54:36.1846 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4P223MB0561 Subject: Re: [FFmpeg-devel] [PATCH] enable auto vectorization for gcc 7 and higher X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: > -----Original Message----- > From: ffmpeg-devel On Behalf Of > Swinney, Jonathan > Sent: Wednesday, July 27, 2022 7:35 PM > To: ffmpeg-devel@ffmpeg.org > Subject: [FFmpeg-devel] [PATCH] enable auto vectorization for gcc 7 > and higher > > I recognize that this patch is going to be somewhat controversial. > I'm submitting it mostly to see what the opinions are and evaluate > options. I am working on improving performance for aarch64. On that > architecture, there are fewer hand written assembly implementations > of hot functions than there are for x86_64 and allowing gcc to auto- > vectorize yields noticeable improvements. > > Gcc vectorization has improved recently and it hasn't been evaluated > on the mailing list for a few years. This is the latest discussion I > found in my searches: http://ffmpeg.org/pipermail/ffmpeg-devel/2016- > May/193977.html > > If the community is not comfortable accepting a patch like this > outright, would you be willing to accept a new option to the > configure script, something like --enable-auto-vectorization? > > Thanks! > > Signed-off-by: Jonathan Swinney > --- > configure | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/configure b/configure > index 6629d14099..c63c9348ad 100755 > --- a/configure > +++ b/configure > @@ -7173,7 +7173,9 @@ if enabled icc; then > disable aligned_stack > fi > elif enabled gcc; then > - check_optflags -fno-tree-vectorize > + case $gcc_basever in > + 2|2.*|3.*|4.*|5.*|6.*) check_optflags -fno-tree-vectorize ;; > + esac > check_cflags -Werror=format-security > check_cflags -Werror=implicit-function-declaration > check_cflags -Werror=missing-prototypes > -- LGTM - basically. I had removed that flag about two years ago and never seen an issue (Win,Linux,BSD x x86_64,armv7,aarch64). But it has always been with quite recent versions of gcc, so I can't say whether it's safe already with 7.x One exception I've seen was with an Android NDK build in gcc compatibility mode, where I got a clang compilation error. But that's nothing of concern I think. sw _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".