Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:119285 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 75616 invoked from network); 16 Jan 2023 16:36:16 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 16 Jan 2023 16:36:16 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 469BD180548 for ; Mon, 16 Jan 2023 08:36:15 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS24940 176.9.0.0/16 X-Spam-Virus: No X-Envelope-From: Received: from chrono.xqk7.com (chrono.xqk7.com [176.9.45.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 16 Jan 2023 08:36:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bastelstu.be; s=mail20171119; t=1673886972; bh=hoaebrtEUqvFyyoi5uyE+7Faup3zxV0hjGH9V3rlSNc=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=gdrge3Xo9drVcmjZdT+xu+V6PCjzGbA+m4CHa6qX1rhbM0pD+1lmbYEZk8Yez5vsR 43vEsRijj+DXa1JRVlF3rFk4cBd8pGkBZmRLonI0FtFNhmhGNlwUwAZDFYrPTlivmY rAX0qYXOggMHGd2rpoWTRj1h5cS65sasfOXI3Qtpidg2BWWU22g8VoBVY3DhxTfnVG BcqzDq0isFZXqHP2JWLzs96VtikLE3jYRhghQJRDlUDI+DiPCITgoNWfS4EazYCuRX 9y+5EUJjblZVl0UBWSkTORmLKjKwWXi8CscKUiHuC/lPXAA9csEksYj/iZA/BxmW7R QvBAF8DOK02QQ== Message-ID: Date: Mon, 16 Jan 2023 17:36:09 +0100 MIME-Version: 1.0 Content-Language: en-US To: Kamil Tekiela , Max Kellermann Cc: Chase Peeler , internals@lists.php.net References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] RFC: rules for #include directives From: tim@bastelstu.be (=?UTF-8?Q?Tim_D=c3=bcsterhus?=) Hi On 1/16/23 17:25, Kamil Tekiela wrote: > Have you done any benchmarking in terms of build time? Is there any > tangible difference or is it only theoretical? > From my experience contributing to another C project (HAProxy), cleaning up the the includes can have a measurable impact on build times. See this commit for example: https://github.com/haproxy/haproxy/commit/340ef2502eae2a37781e460d3590982c0e437fbd They go even as far as regularly reordering object files by build time to optimally keep multi-core machines busy to shave off the last few milliseconds: https://github.com/haproxy/haproxy/commit/d2ff5dc3ebba1163749e2d874cce5892570f540a Even for incremental build having a hypothetical 100ms decrease in build time can make the difference between "this is fast enough to wait" and "this is so slow that my mind wanders around while waiting to build". And in CI which doesn't do incremental builds we won't needlessly burn CPU time that is better spent elsewhere. Thus I'm in favor of this cleanup. Best regards Tim Düsterhus