From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: parallelizing more actions Date: Thu, 16 Nov 2017 11:06:09 +0100 Message-ID: <871skyilm6.fsf@gnu.org> References: <20171109090559.GF1815@macbook41> <20171112133149.GI1815@macbook41> <20171113185522.GM1815@macbook41> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40854) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eFH3r-0005ew-BD for guix-devel@gnu.org; Thu, 16 Nov 2017 05:06:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eFH3m-0001Az-9U for guix-devel@gnu.org; Thu, 16 Nov 2017 05:06:19 -0500 Received: from hera.aquilenet.fr ([141.255.128.1]:55760) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eFH3m-00018I-3d for guix-devel@gnu.org; Thu, 16 Nov 2017 05:06:14 -0500 In-Reply-To: <20171113185522.GM1815@macbook41> (Efraim Flashner's message of "Mon, 13 Nov 2017 20:55:22 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Efraim Flashner Cc: guix-devel@gnu.org Efraim Flashner skribis: > On Sun, Nov 12, 2017 at 03:31:49PM +0200, Efraim Flashner wrote: >> On Thu, Nov 09, 2017 at 11:05:59AM +0200, Efraim Flashner wrote: >> > While rebuilding glibc-final on aarch64 I realized that the 'strip pha= se >> > took 235 seconds. The relevant code for 'strip from gnu-build-system is >> > in guix/build/gnu-build-system.scm, starting at line 340, with the >> > actual stripping starting at 398. When I changed 'for-each' to >> > 'par-for-each' the time dropped from 235 seconds to 215, about an 8.5% >> > savings. I'm pretty sure most of that time was spent failing to strip >> > certain files, but it is still a savings. >> >=20 >>=20 >> These numbers were for glibc@2.26. I ran it against glibc@2.25 on my >> x86_64 machine with a spinning harddrive and 2 cores, without the patch >> it took 165.7 seconds (164.6 the second time), with the patch it dropped >> to 24.3 seconds. >>=20 >> I'll test it with glibc@2.25 on aarch64 later when its not building >> other things. >>=20 > > Looks like aarch64 could use some help somewhere. With the patch it took > 221.9 seconds, without the patch it was 219.8. > > so in summary, aarch64 is terrible at stripping, parallel or not, and on > x86_64 my patch saved 85% of the patching time, despite only using 2 core= s. This is weird. I don=E2=80=99t see any reason why =E2=80=98strip=E2=80=99 = would be slower on aarch64 than elsewhere. Are you sure it=E2=80=99s not mostly I/O? It woul= d be nice to time it and see the real/user/system times. Thanks, Ludo=E2=80=99.