Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:75346 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 27368 invoked from network); 9 Jul 2014 18:49:38 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 9 Jul 2014 18:49:38 -0000 Authentication-Results: pb1.pair.com header.from=nlopess@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=nlopess@php.net; spf=unknown; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 212.55.154.24 as permitted sender) X-PHP-List-Original-Sender: nlopess@php.net X-Host-Fingerprint: 212.55.154.24 relay4.ptmail.sapo.pt Received: from [212.55.154.24] ([212.55.154.24:38550] helo=sapo.pt) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 81/80-17709-EBE8DB35 for ; Wed, 09 Jul 2014 14:49:36 -0400 Received: (qmail 27285 invoked from network); 9 Jul 2014 18:49:31 -0000 Received: from unknown (HELO sapo.pt) (10.134.36.75) by relay4 with SMTP; 9 Jul 2014 18:49:31 -0000 Received: (qmail 21450 invoked from network); 9 Jul 2014 18:49:31 -0000 Received: from unknown (HELO pc07654) (nunoplopes@sapo.pt@[85.244.17.245]) (envelope-sender ) by mta-auth01 (qmail-ptmail-1.0.0) with SMTP for ; 9 Jul 2014 18:49:26 -0000 X-PTMail-RemoteIP: 85.244.17.245 X-PTMail-AllowedSender-Action: Message-ID: <05091D9021CD48208FCE220DE1CCC3CE@pc07654> To: Cc: , "Sara Golemon" References: In-Reply-To: Date: Wed, 9 Jul 2014 19:49:25 +0100 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="utf-8"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Windows Mail 6.0.6002.18197 X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18463 Subject: Re: [PHP-DEV] Concurrency support for run-tests From: nlopess@php.net ("Nuno Lopes") > On Mon, Jul 7, 2014 at 6:53 AM, Michael Wallner wrote: >> I also have a patch for run-tests sitting around for quite some time, >> which >> adds concurrent test execution support. I already fixed a lot of non >> re-entrant tests in the past, but there might still be quite some of >> them. >> > HHVM uses PHP's test suite and runs them in parallel. We upstreamed a > number of fixes for tests to make these behave properly (many tests > used common, generic filenames like "test.txt" which would clobber > over each other when run concurrently). Would love to see PHP eat up > a few more cores too. The other problem regarding running tests in parallel are DB extensions. Many DB tests use the same tables. Or extensions that create sockets on the same port (e.g., ftp). Having thought a bit about the subject, the heuristic I came up with was to 1) do not run tests from the same extension in parallel, and 2) do not run tests from certain extensions in parallel (e.g., mysql and pdo_mysql). BTW, I made this patch in 2007 for run-tests.php that was a naive parallelization of the system: http://gcov.php.net/~nlopess/multi_threaded_run_tests.txt Nuno