From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id 499326DE0F68 for ; Sat, 4 May 2019 15:53:31 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: -0.033 X-Spam-Level: X-Spam-Status: No, score=-0.033 tagged_above=-999 required=5 tests=[AWL=-0.032, SPF_PASS=-0.001] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1rL9VqElFWJH for ; Sat, 4 May 2019 15:53:30 -0700 (PDT) Received: from fethera.tethera.net (fethera.tethera.net [198.245.60.197]) by arlo.cworth.org (Postfix) with ESMTPS id 394CF6DE0F4F for ; Sat, 4 May 2019 15:53:30 -0700 (PDT) Received: from remotemail by fethera.tethera.net with local (Exim 4.89) (envelope-from ) id 1hN3X2-0007MR-NS; Sat, 04 May 2019 18:53:24 -0400 Received: (nullmailer pid 19104 invoked by uid 1000); Sat, 04 May 2019 22:53:23 -0000 From: David Bremner To: Daniel Kahn Gillmor , "Rollins, Jameson" , Notmuch Mail Subject: Re: parallelize test suite In-Reply-To: <87r29dnbl0.fsf@fifthhorseman.net> References: <20190504205738.21504-1-jrollins@caltech.edu> <87r29dnbl0.fsf@fifthhorseman.net> Date: Sat, 04 May 2019 19:53:23 -0300 Message-ID: <878svlhlwc.fsf@tethera.net> MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 04 May 2019 22:53:31 -0000 Daniel Kahn Gillmor writes: > On Sat 2019-05-04 20:57:43 +0000, Rollins, Jameson wrote: >> This is a simple patch series that will run the entire test suite in >> parallel if either the moreutils or GNU parallel utility is >> available. On my 8-core machine the full test suite will now run in >> under 20 seconds, which is a pretty huge improvement. > > I've reviewed this series, and it is a *very* nice cleanup; the latency > reduction makes it much more pleasant to develop notmuch safely. > > My computer is weaker than jamie's (i have an older 4-core i5 > processor), but with this series applied, the test suite went from 1m48s > to 0m29s for me. > Last time we discussed parallel test running, there we concerns about multiple versions of certain servers colliding with each other. This still seems to be at least a theoretical issue with smtp-dummy, although a glance suggests that it might only currently be used in T310-emacs.sh. I'm not sure what a robust solution is here. - gpg-agent - emacs - dtach Did I miss any other background processes run by the test suite? I can imagine gpg-agent is managed OK these days since it's started automagically by gpg. emacs seems to use the current process id in the socket name, so that also should be OK, although it should maybe be replaced with something more robust to avoid problems with pid rollover. I _think_ including the test name in the emacs server would do the trick The dtach socket is in the tmp.T* directory, so that should be OK. I wonder if a good solution would be to make running the test suite in parallel be opt-in (e.g. by configuration option). Or at least have a way to disable it for situations like CI and autobuilders. d