Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:26656 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 36286 invoked by uid 1010); 17 Nov 2006 14:54:14 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 36270 invoked from network); 17 Nov 2006 14:54:14 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 17 Nov 2006 14:54:14 -0000 Authentication-Results: pb1.pair.com header.from=antony@zend.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=antony@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 212.25.124.162 as permitted sender) X-PHP-List-Original-Sender: antony@zend.com X-Host-Fingerprint: 212.25.124.162 mail.zend.com Linux 2.5 (sometimes 2.4) (4) Received: from [212.25.124.162] ([212.25.124.162:41773] helo=mail.zend.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 3E/77-15371-E0DCD554 for ; Fri, 17 Nov 2006 09:54:13 -0500 Received: (qmail 15099 invoked from network); 17 Nov 2006 14:52:37 -0000 Received: from internal.zend.office (HELO ?127.0.0.1?) (10.1.1.1) by internal.zend.office with SMTP; 17 Nov 2006 14:52:37 -0000 Message-ID: <455DCB94.6010708@zend.com> Date: Fri, 17 Nov 2006 17:47:48 +0300 User-Agent: Thunderbird 1.5.0.7 (X11/20060909) MIME-Version: 1.0 To: php-dev CC: Andrei Zmievski , Matt Wilmas References: <455455D1.3020706@zend.com> <017f01c704b9$5e07f870$0201a8c0@pc1> <45546EDB.2020400@zend.com> <011b01c70721$ca0ec7f0$0201a8c0@pc1> <0e7bb4f7f12e57e899a6c4b26068b93e@gravitonic.com> <455CBA6C.4060801@zend.com> In-Reply-To: <455CBA6C.4060801@zend.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] zend_u_strtod() 400% speed up From: antony@zend.com (Antony Dovgal) Okay, I got some test results. First of all, both patches seem to be fine, they both fix several failed tests: Zend/tests/zend_strtod.phpt ext/standard/tests/array/range.phpt ext/standard/tests/general_functions/001.phpt ext/standard/tests/math/abs.phpt ext/standard/tests/math/bug30069.phpt Now the test results (average time in seconds spent on running the test script): ---------------------------------------------------------------- Platform current | Matt | Tony ---------------------------------------------------------------- Linux intel64 (ICU 3.6, non-ZTS) 104.20 18.93 29.93 Linux intel64 (ICU 3.6, ZTS) 106.38 19.78 31.97 Linux i386 (ICU 3.6, non-ZTS) 809.21 25.49 59.78 Linux i386 (ICU 3.6, ZTS) 708.43 30.22 59.90 Linux i386 (ICU 3.4, non-ZTS) 526.71 22.39 36.96 Linux i386 (ICU 3.4, ZTS) 435.27 26.20 37.87 FreeBSD i386 (ICU 3.6, non-ZTS) -- 20.66 33.47 ---------------------------------------------------------------- (Yes, I'm too lazy to rebuild PHP on FreeBSD 4 times more, as the result is clear). So we got a clear winner here - the patch by Matt outperforms the patch of mine by ~30%. The patches: http://tony2001.phpclub.net/dev/tmp/u_strtod.diff - my patch http://tony2001.phpclub.net/dev/tmp/u_strtod1.diff - Matt's patch The test script used: -- Wbr, Antony Dovgal