Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:93441 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 61891 invoked from network); 23 May 2016 10:16:25 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 23 May 2016 10:16:25 -0000 Authentication-Results: pb1.pair.com header.from=pthreads@pthreads.org; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=pthreads@pthreads.org; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain pthreads.org from 209.85.161.172 cause and error) X-PHP-List-Original-Sender: pthreads@pthreads.org X-Host-Fingerprint: 209.85.161.172 mail-yw0-f172.google.com Received: from [209.85.161.172] ([209.85.161.172:34467] helo=mail-yw0-f172.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 1A/F5-14293-878D2475 for ; Mon, 23 May 2016 06:16:24 -0400 Received: by mail-yw0-f172.google.com with SMTP id c127so48976295ywb.1 for ; Mon, 23 May 2016 03:16:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pthreads-org.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=vtDk3OhQJ/SwUGwD6NwbOVTOs25rhQNek1yooPoF1b4=; b=yYQZsAvAGx3JCmpLpM73PZYP18CZv7RGeZWK8VugnsSXUpzNsQDge6hTAobO50zfKp bbwDywAw6OY1JpGYyCUdLGjQZcbjB0ASBTHzONnwMfBqH2PPifyLkYUM3PucOgBiKsX8 7InQmruRfwSxWpAquDMlUHVgvXTxCoYxhZYTZTzQcfkmNy/95D8KQASXdzwGlrikaf4D jnJFiVtP6m14NS5ZH2zDrMnajG33WIwGKSLB/BFRUj08Dy+e0ug82YHcy7/qUPXiA+XV 9DPLZlshtpunHF6nDr778u1XEH0DcooIqQNhCsJflgs8eR5dBFbtAmhScBnj93FOLy5F +EYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=vtDk3OhQJ/SwUGwD6NwbOVTOs25rhQNek1yooPoF1b4=; b=DrkDAYjJLrR6+UKIoXBEk2lz5wU02TqSCJmyq9ELYWJjz+av2yVcOIMMSwhdYayodO C9xJAzYCjGNQgcKjXC86w/EJMXiF3W1GD0sCXk8jbYVYtZHG2cVewItIBVkLjRoWqZk9 hP8D9Mqykqwx2nZmEq59ErgPrAK4nMY7ISQVV7kI5k9GMwsfgse5FVRvLJsYitQuYZdW EqhPN4Aac9HDd5iSI4wYeb27zFbVsDvqWFD8BLc9fHs8MO7YXZrWxwJMwCpfz5XUwHU3 J4DzSZpEOvkbLMK45vP5/Tk9Ovdbo3PGRjF12mZnxu52TD3uiyCFtfZqDcKDhsjIpPVJ Za2A== X-Gm-Message-State: AOPr4FUR8Xe62+fMYWpeiEJq8oM0DJWdB8cDj19eGvd6e0vgNBMW7vWCNQBHoaIxQftgKVmEnZZph4lFa6XCUA== MIME-Version: 1.0 X-Received: by 10.129.44.139 with SMTP id s133mr9950360yws.182.1463998582172; Mon, 23 May 2016 03:16:22 -0700 (PDT) Received: by 10.129.109.67 with HTTP; Mon, 23 May 2016 03:16:22 -0700 (PDT) X-Originating-IP: [109.157.60.67] In-Reply-To: References: Date: Mon, 23 May 2016 11:16:22 +0100 Message-ID: To: Julien Pauli Cc: Stanislav Malyshev , Dmitry Stogov , PHP internals , Phil Sturgeon Content-Type: multipart/alternative; boundary=001a1141e82a71673705337fbbc0 Subject: Re: [PHP-DEV] [RFC][Vote] Typed Properties From: pthreads@pthreads.org (Joe Watkins) --001a1141e82a71673705337fbbc0 Content-Type: text/plain; charset=UTF-8 Morning internals, I have improved the performance of the patch a little, here's the results of a bad run: krakjoe@fiji:/usr/src/php-src$ sapi/cli/php -n prop.php empty_loop 0.064 write_prop1() 0.088 0.025 write_prop2() 0.079 0.016 write_prop3() 0.082 0.018 ------------------------ Total 0.314 There is going to be overhead, not the kind we can't minimize, or justify though. Dmitry has said he'll review, and I'm hoping at least Laruence, Nikita, and Bob will do the same ... We have many weeks to improve the implementation, I'm not going to merge anything that's obviously bad :) Cheers Joe On Mon, May 23, 2016 at 10:54 AM, Julien Pauli wrote: > On Mon, May 23, 2016 at 11:09 AM, Stanislav Malyshev > wrote: > > Hi! > > > >> The performance effect of this implementation is terrible. > >> > >> Assignment to typed property is 2.3 times slower. > >> Assignment to untyped property in a class with typed properties is 1.8 > times slower. > >> > >> See the benchmark > >> https://gist.github.com/dstogov/1b678712adeee51665cdd829195bb800 > > > > This is not good. I wonder why these tests weren't made before the vote > > and results wheren't added in the RFC. Should we make it a standard > > practice to do so? Having 2x slowdown on each property access sounds > > like a bad idea. > > The question is : > * should the vote be an idea-based vote, or integrate the code into the > vote ? > > My vote did not integrate the code, but the feature. > > The idea is that if the RFC passes, then the feature is agreed, and we > still have some time to find a better implementation. > If we could not find one, then the feature should be abandoned or > post-poned until a new patch. If the new patch changes the > implementation, then the RFC should be reopened. > > My thoughts. > > Julien.Pauli > --001a1141e82a71673705337fbbc0--