Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:84023 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3502 invoked from network); 27 Feb 2015 15:56:14 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 27 Feb 2015 15:56:14 -0000 Authentication-Results: pb1.pair.com header.from=dmitry@zend.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=dmitry@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 209.85.220.179 as permitted sender) X-PHP-List-Original-Sender: dmitry@zend.com X-Host-Fingerprint: 209.85.220.179 mail-vc0-f179.google.com Received: from [209.85.220.179] ([209.85.220.179:55000] helo=mail-vc0-f179.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E8/E8-32582-D9390F45 for ; Fri, 27 Feb 2015 10:56:14 -0500 Received: by mail-vc0-f179.google.com with SMTP id hy4so6649507vcb.10 for ; Fri, 27 Feb 2015 07:56:10 -0800 (PST) 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:content-type; bh=yhhwTi5D89wldGf0XhrQh4jB1f9Kh6ho2WPfDM4YWtM=; b=GiEG6jQQnQEh8ncfAcervPX+Wn+fxetvcf9QplfW5kCOTAv+cOJ5hMNgCcOlO0+5x0 PpN4qq6Um3hGypV9slfQs3qpZTRe+FRkmmKTuyeysFFVhHFveCA1uOXDNp8heb4rUn3Z 2lLtBP259em84VSC5OG4uA0hjGz4u3VD4rv8oPiCzieEdmzj4XbLM+BzYklHmnridsm6 QG4xbC+b6DvilhFaGHuc48yQYe6WnNCYkI662ckqYxw6ZX/NghepFRy45eHMGHM8mRXJ yKCeTmaONcy2fXi8UYnCEsdy6y/98/TqIqVYubYt94cbSe7jkgJ+Y7jgNdKCIvVcC7+g EXzQ== X-Gm-Message-State: ALoCoQlgVE2dT3d08QizzdYlSBqq3PSdnmAYGyM5Iko6V2a9nctClTZ2hyJAoGcXqoLPwjRY6aIUkNM4R5eXk+LXM5RuJ5cWmczFgL1mzIldyM3uMzJnsMxTNZPcn1mpeM7IRDuf8ToobWndGOSuxIC2FbkFygm8Mg== MIME-Version: 1.0 X-Received: by 10.52.99.230 with SMTP id et6mr13400050vdb.65.1425052570755; Fri, 27 Feb 2015 07:56:10 -0800 (PST) Received: by 10.52.113.231 with HTTP; Fri, 27 Feb 2015 07:56:10 -0800 (PST) In-Reply-To: <54F08FF3.3040404@seld.be> References: <54F08FF3.3040404@seld.be> Date: Fri, 27 Feb 2015 19:56:10 +0400 Message-ID: To: Jordi Boggiano Cc: PHP Internals Content-Type: multipart/alternative; boundary=20cf3071c7c04446d4051013e839 Subject: Re: [PHP-DEV] Re: Zend JIT Open Sourced From: dmitry@zend.com (Dmitry Stogov) --20cf3071c7c04446d4051013e839 Content-Type: text/plain; charset=UTF-8 On Fri, Feb 27, 2015 at 6:40 PM, Jordi Boggiano wrote: > On 27/02/2015 15:19, Andi Gutmans wrote: > >> >> On Feb 27, 2015, at 7:12 AM, Anthony Ferrara >>> wrote: >>> >>> Dmitry and Zend, >>> >>> Thank you for sharing your code. I look forward to playing with it. >>> >>> Perhaps after 7 stabilizes (and ships) you could write up your >>> thoughts around it? Why decisions were made and the findings that you >>> have? >>> >> >> Yes I think we can definitely do that. It is an interesting experiment >> and clarified also that JIT was less interesting in the short term as we >> can all observe by the fabulous results of the current PHP 7 runtime. But >> absolutely worth discussing post 7 as there surely are interesting >> opportunities. >> > > Do you have a one line summary of why it's useless for real world > applications? Is it just because they don't do enough number crunching > compared to I/O or is it a matter of the JIT not kicking in fast enough to > improve things in a single request cycle? > It's not a single request cycle. JIT integrated into opcache, it compiles php script(s) of first access and stores code in shared memory. On following requests precompiled code is executed directly from shared memory. - The first request may be extremely slow (few minutes) - The speed improvement on the following request may be insignificant or even negative. It very depends on application, but from my experience only small apps got significant improvements. This may be explained by huge increase in ICACHE and ITLB misses, but I'm not 100% sure. > I am biased but if it improves the bench code so much it still sounds like > a potentially good things for specific code like the composer dependency > solver :) > Yeah. Probably, if we position this work as a JIT for hotspots only, or even enable it for some functions manually we may get better results. Thanks. Dmitry, > > Cheers > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > --20cf3071c7c04446d4051013e839--