From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Szabolcs Nagy Newsgroups: gmane.comp.lib.glibc.alpha Subject: Re: [PATCH] v11 Improves __ieee754_exp() performance by greater than 5x on sparc/x86. Date: Fri, 2 Feb 2018 16:35:45 +0000 Message-ID: References: <1517262265-79445-1-git-send-email-patrick.mcgehearty@oracle.com> <361bac88-5538-227f-b6dc-76416178192c@arm.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1517589260 31139 195.159.176.226 (2 Feb 2018 16:34:20 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 2 Feb 2018 16:34:20 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 Cc: nd@arm.com, Patrick McGehearty , libc-alpha@sourceware.org To: Joseph Myers Original-X-From: libc-alpha-return-89919-glibc-alpha=m.gmane.org@sourceware.org Fri Feb 02 17:34:15 2018 Return-path: Envelope-to: glibc-alpha@blaine.gmane.org DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:cc:subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; q=dns; s=default; b=IecJOhR5171Hg+Cs JCuVBAqATKDK1dpFa8VLTog6QOmvFeHTgISagtntlD++Hxog9rwyFfw77ljCu1Su bsXCnGBEz0ZVaC2xbJ5lJR6IrjU8j5mXn+H0HOTyDse/w1PK3lcwHFdqSv4yw7XC WiooK27mbF7uTuHVamk6QmkJCJM= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:cc:subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=default; bh=wcRyud8fEQ6j8TqH4rEtRd 77qIs=; b=Jyd1k/6i0iVXUy/IWdGgrT65Zj01yv568SBrBmlYd5ssaAv6fY1PEe Y/lT5F4blTeclZIajdiXjU5AKQafqL/HoOAeuE9A0ceIvzUp2dk4qd0BXwQirjiR IoWHaIJef0sTeso9TQU2LMI55jHeGeaz0fuvyb+Cnu6Wr3A64f4CE= Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Original-Sender: libc-alpha-owner@sourceware.org Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=H*r:40.107.2, H*r:sk:EUR02-V X-HELO: EUR02-VE1-obe.outbound.protection.outlook.com Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs.Nagy@arm.com; In-Reply-To: X-ClientProxiedBy: HE1PR0502CA0002.eurprd05.prod.outlook.com (2603:10a6:3:e3::12) To VI1PR0802MB2495.eurprd08.prod.outlook.com (2603:10a6:800:b6::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 728e4ee1-15ac-4d17-df93-08d56a5b058c X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020);SRVR:VI1PR0802MB2495; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0802MB2495;3:6ARMDv7d/+cjjOGNlgNVXNmE9+sF28usTHVioQCXgRbDWsAxEz6eooYgMUvCRmcYFa5WZmwJFxvigNjvwdsVdDeH65dYpnRR17vjeZFh5c4cHq09G5bB5Y/5rZF/7RsrQJxwaP/1hITJNXcZWid26wS3ZyuTETH3P7ZeuNgzUw1bCjd5BGa3q3rUfX1M17XE+JfGfyRsVNq67NIWwgSdVC9ghD34Fv3QcK/NYkGFqqkf4bcI37G6SSqGUOAzoHJp;25:Vdz64tBS6/9jD3Io0NDqalW+xfhCQPzlPwc7D8hwK2o/6h6YMyGsARitEPyKEAK/6Uc2uV93Bg7h+d0ydcFUzGM6sWK2PN1Dpm2L2/UXLJa5XE+8jEFcxc3cUSd8SDaQyrcX/vQOK0ft7E3ocKHDMFB104FvXJwYgez92RaXnvusgUSPLpI6O2xjh9MmiQrivKYd9gq2I4SeFoeBQj6bEHs8o482NqDIFxE6gT6h9vU/7z2ULQnBp647sHK5a33tLLhAUGuVMVn1Y3ytHz7h/2HtMumKN2aEbtBjuVz5HHTsuRZth5xdp1wDb/vwZkmebNJxX8tsdS0x4LpluxiPfQ==;31:DaSb9QJkk9JVoc9avz/A05/HactYVmGjY/fXyPcBm7qbt0iDGxTvag2mx40yYi8SdYQMK2rRpoWpQy5ikwFT8urOMDdsd+cTP2jFT7/mb/XQMfs+rMmviVTUQIGgZ95hShDvbBRh5k5SwgK1E8S7HTeX7isHf76HQnV8ue0kdQh VGeKlFdtb9Yu32cajGpo5OPBeS8t7YrJK2lRmc+y7da0GaIEv6Wzof7zk1dR8Os8= X-MS-TrafficTypeDiagnostic: VI1PR0802MB2495: NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1;VI1PR0802MB2495;20:Etnv0Yl5iImQsunRAfomsLI0J7akXc5VIBsjAkBowVoKxIOmuGqtNMDWhgb7TTP5s5t3TpjltbFQpTNgcMSWUvYJt3P7edCZis3JAP3YXBTRUk1/a/0zQV6lxRfBfy19rQA3VJF3IaA33RS+ymX5HYBHuVMGueTgr78Au6Fj+eE=;4:d8AI3b0yEBuSRiJbbghKfUj+NBXHQ/vSpI+wKqRbPzmEdN51zLC6zlxqFRzyVSZcgZmEKgO5C4Loyo/TB3yAwCvL9vtzx24QHWmMGZvoPxM/7Os3eVArZu0cGnXc/i2OsuSUr4P+q7QmMiAogkChKJK+/xBts6w2lqzHmUwH6RQEwTIauZTDf10x40yOWvOH2+hjGWOOBZV3rbl74ZrralOdEtvc518f6sF8CZBVARGxecicb8om7uOoQPNioPvfx75YulOXRId18wk90DUf6w== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040501)(2401047)(5005006)(8121501046)(3231101)(2400082)(944501161)(3002001)(93006095)(93001095)(10201501046)(6055026)(6041288)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(20161123560045)(6072148)(201708071742011);SRVR:VI1PR0802MB2495;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0802MB2495; X-Forefront-PRVS: 05715BE7FD X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6049001)(366004)(39860400002)(376002)(346002)(39380400002)(396003)(199004)(189003)(51444003)(97736004)(58126008)(2906002)(6116002)(478600001)(83506002)(105586002)(65826007)(106356001)(230700001)(3846002)(2950100002)(6666003)(6916009)(86362001)(23676004)(81166006)(52116002)(52146003)(5660300001)(81156014)(64126003)(316002)(6486002)(8936002)(16576012)(59450400001)(2486003)(386003)(8676002)(72206003)(53936002)(31696002)(50466002)(67846002)(186003)(77096007)(229853002)(76176011)(16526019)(6246003)(68736007)(53546011)(7736002)(31686004)(65956001)(65806001)(47776003)(66066001)(305945005)(36756003)(25786009)(4326008)(26005);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR0802MB2495;H:[10.2.206.230];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjA4MDJNQjI0OTU7MjM6TkU1K0xyOFNhN0M2VGc3K0JCbFREbkRW?= =?utf-8?B?a0d5T2VKYVVtRVhXNEFnMS8rOG1saTZseFRMb3lPaHdOYUx5NjVWWFl2SUEy?= =?utf-8?B?V1puZmQyVFlrb28zV09pVWxLRVE5NUVoYjBnaXRxcVNzSGp3RDRQVlkxQysv?= =?utf-8?B?L3paK2tmRzJCaHd5VktyaGZPNG90YzVyamI3SlBiU0dhcDhsN2x5MWxrRk1x?= =?utf-8?B?K2IzamEzcXNGMGIrRlo3S3k3bTdCL3RUaEJOUFZQVDdDaGU2VDRnc2V1Tk00?= =?utf-8?B?cTc5SDRrcng2Y2QrWTA1Z0RGL2NITnd4anlDRWlFVHF4a1FhZWZVem1UdXhV?= =?utf-8?B?ZndpQmxUZ0xadnhWNXVQTXNtZEZyY21FNDM4R0tUMzdWUDZLMVNFdFAzbVc2?= =?utf-8?B?cUxYSUtIQUErZ0N1TGZXR3U4ZG5vNGdiR3oxSVdFZ25hWDJubWdSMzBMQmdo?= =?utf-8?B?RWR4WUdQaUg3cDNKMnowM0Fvb1lZMGxVRFZEOWl0dGpoZmhmY0Z6UWJUWFNU?= =?utf-8?B?WFVWSzFIVk01MVB5QTBaamJ1OFVOTUdOcjJKRHVCNldNazEyTlY3cFQ3Rm82?= =?utf-8?B?Uk9EZVZXMVNtckVsN1Noc01WNlJNZ0N1WUdCVHhaaC9KTUt0dis5L1RDRHRO?= =?utf-8?B?TVNzV1BxOFNMbW4rUnpiMWlvTXVNemRtNmFycmpwbH X-Microsoft-Exchange-Diagnostics: 1;VI1PR0802MB2495;6:hSDJHANCIR0X0Csk2Q9FpptP8wf7JS/NSwF7PD760WP6WTYXyZf+I9ui2ZF0EPSzPfKFfGkC952e5iTm6Uj0wjYDkE1pKPK5KIxM9TyhtXNa6ZcGl3GIiUfkeqsIMkwIDbBYkTvu0F4Hyi7GWt6+n971QiRUzrMAECWY6Tu91MHnCJ0Hc5U3Iwy3F3BZ6GIpYJzC0g/Eyeh1ZuH0LUOzudcyVwDFORuqzS0AJMk/950p4C7MbC1A6F9SwyCMIRrJmRO6HcTeRRRPhJqkSugrCfq+u9NNrRf7lKvvNAM6Pm63vIHruCzQa6qhnwSgI9wsdLU5FdrMjciwbn/Da6l4T6jB2CSKVm/EmVNKR0qGSbQ=;5:e4V0NtTYaUcKxh2Cw3Uo5MDtQobSDov4xmMCBGEN+g3pAFsLysARFYSwyYGJ1uB+r/9R9IGFpDBCbBw7WOvkkwSa75xCMxtHVBcXbdncaDQnk25HpZhTr4USPLma8e5rWjHErN6I1XqyGtEgFjdASOL0E76mBuBIkX1qkNIrB5g=;24:ED4GBh7MWffYK12iEM72yFsDoNW1L2FPzDg3k2dcwcUqFKs+CUCn9NlsqdjF/+kJiluVZ98olu0Ica9w2ie2lwfG5XG9SDFhdHUJS86ugZk=;7:9z7i+Sf4ejPRUfELDW7QGAs56ZK3ySKGFTfJU9+1KUCSF3sxFFDTeOnbmTZimOructEzuPVj8JSjtjsIAEkne45qf8r+inlccF9eRA5L7agM59iCV1Y/rQ28m2qNB So7otuLmvznngse3jXOnS2te7xcaRi/0xiANxPQNdm0AX/WpzmRLgnWx1C3oWeuS8 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Feb 2018 16:35:49.7510 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 728e4ee1-15ac-4d17-df93-08d56a5b058c X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2495 Xref: news.gmane.org gmane.comp.lib.glibc.alpha:82269 Archived-At: Received: from server1.sourceware.org ([209.132.180.131] helo=sourceware.org) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eheHi-0006Z0-QR for glibc-alpha@blaine.gmane.org; Fri, 02 Feb 2018 17:33:55 +0100 Received: (qmail 17291 invoked by alias); 2 Feb 2018 16:35:56 -0000 Received: (qmail 17274 invoked by uid 89); 2 Feb 2018 16:35:56 -0000 On 02/02/18 15:33, Joseph Myers wrote: > On Fri, 2 Feb 2018, Szabolcs Nagy wrote: > >> (i also removed the rounding mode settings in both cases >> as that can be avoided at least on aarch64) > > There is or was certainly code in the existing exp that gives completely > wrong results in non-default rounding modes (that was bug 3976) - e.g. > using precision-extension techniques that require round-to-nearest - > though I don't know if that applies to the fast case code or if it's only > in code for slow cases (or code for slow cases but using other rounding > modes results in the slow cases getting used much more). > that's because in the arg reduction rounding is done like y = x * log2e.x + three51.x; bexp = y - three51.x; ... y = t + three33.x; base = y - three33.x; but if instead of x+shift-shift a rounding mode independent instruction is used then there should be no huge error, this should be possible at least on aarch64, but even on other targets a rounding mode independent trunc(x+0.5) may be faster than using fenv. i think that exp can be implemented without fenv access and with acceptable error in non-nearest rounding.