Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:104420 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 52488 invoked from network); 14 Feb 2019 20:44:18 -0000 Received: from unknown (HELO mail-lj1-f179.google.com) (209.85.208.179) by pb1.pair.com with SMTP; 14 Feb 2019 20:44:18 -0000 Received: by mail-lj1-f179.google.com with SMTP id f24-v6so5982077ljk.0 for ; Thu, 14 Feb 2019 09:27:44 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=omqNM1Iui2eZrGtjg3BJVNRtquEapotckA+4qNFMPII=; b=V05mhF6jPEq9qgAikpSlXIr0V9a3IpObIPlaPWfgNo7lvDO9j/Sb4jarNuKzJjq9qP q+4HrFuv78x6CAUUX5VN51npzqcUEaBH9MrIbpHOCT9CA1+mnW7wf858n0kxxvjPTtr5 qZJljlxx6ajWlmnk2ne95lP+tvoP46fRaOET5wC+WQlV+Ofx5dd0V93A2rH0YLnVJQwr jioKxkRpHg9SxERnJahZw8mDn851V174wk9Xps4rdXPRoHA69lVvxMi0ae9qNGBJYUQX kfyh2lzDGiEirKmW7aUKFdCZ0Arf1WinXHrKxWWfvBD/gihAxYY5VN0ptgmnCFTo3K0w PIWg== X-Gm-Message-State: AHQUAuaxAF+i6p14sOI1e0Psq52+AJyBfOBNixa0ncg2IjL4PP6AxtpU fWB8D4Hn1dOCTY3PVyrrcpjFK6DqtGznxC0qFsA= X-Google-Smtp-Source: AHgI3Ibc7EQ9OpFXpPCM3kkbZjuz8lqgtYuOHFRccnmmSG+pSVxOb4zUVgVDZ78ocESNiW9Udk9mZ6xnNJvYOGCPCpU= X-Received: by 2002:a2e:6358:: with SMTP id x85mr2992141ljb.167.1550165263043; Thu, 14 Feb 2019 09:27:43 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: Date: Thu, 14 Feb 2019 10:27:24 -0700 Message-ID: To: Zeev Suraski Cc: Joe Watkins , Rowan Collins , PHP internals Content-Type: text/plain; charset="UTF-8" Subject: Re: [PHP-DEV] Re: ZTS improvement idea From: levim@php.net (Levi Morrison) To all internals, but especially to Zeev and Dmitry, Having a JIT which does not support ZTS is a bit short-sighted. Think about it. You want to add a JIT partly so that PHP will be better at non-web, CPU intensive tasks. If the JIT is successful, eventually you will want parallelism in that domain, and if you are going to use threading then something like ZTS is required. Additionally, a lot of people are using ZTS builds today. You can argue all you want, we can't remove it easily. Imagine if I proposed a breaking change in the language that would affect these same users. Unless we got a *lot* of value out of it, I don't think it would pass. And no offense, but in its current state the JIT does not have a lot of value. It's a promising prototype, but it's not going to help the vast majority of our users. So, respectfully, I hope we can quit talking about removing ZTS. It is required for the present, and it will probably be desirable in the future. Therefore, *some* mechanism for a thread-safe JIT code generation is a requirement. It doesn't necessarily have to be the ZTS we have today, but it needs something. Regards, Levi Morrison