From patchwork Tue Dec 5 18:08:14 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Leif Lindholm X-Patchwork-Id: 120734 Delivered-To: patch@linaro.org Received: by 10.140.22.227 with SMTP id 90csp6067290qgn; Tue, 5 Dec 2017 10:08:20 -0800 (PST) X-Google-Smtp-Source: AGs4zMZ3w/no643Ne2QCyMDdwaqBaSs89iTkvlCPrzeeE57pyathWjnwAs7gUlFLf2CTkaw8nDzK X-Received: by 10.101.83.133 with SMTP id x5mr15488120pgq.175.1512497300675; Tue, 05 Dec 2017 10:08:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1512497300; cv=none; d=google.com; s=arc-20160816; b=HwKqM2dSCevyX+jopAX2MP/BXamxU91MBJNKk1z8joJZnHqu2dtETm2OCvG8vQ+Ffq G7V24MvGtLo52tz7gDonN1XDIgLmzDs8vBzwmaGZr1FmiPrUfhW+ObszqPJv0aeOWWaz VgBiehu81p25sbCG4LZwY4WL+bf3RnlPdQ6T/moV7SQQOacBvU6t1sGbKb2FscpE1jtm 7wzceORD+9DBruzGOCChIibAluJBxj4GvYHj5+nYf6RrkVWFfSOkgLfpgIlex2EtuEjK USOROmQvndarPMVzIfIuT1BKMsFT2mIVuNi6qImJM1suSJpQv1AxDYMg11y//VXuOjrq NTeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:dkim-signature :delivered-to:arc-authentication-results; bh=65urj7O5R3+ZK0CcU7Kt+wAxZgCERzgLLPyq0ACVdBc=; b=LIy9Dacr/7A8HCrBx96Id58uYLKTK49N4dkgXfm36r/tsAw7+L3Oh13VxVbgMaCtwA U/REzN2UEanB5vYxqpmwIZkgfP41Nnnd76+qn+Hx6Zpk1lRy0+GMbWZors4/LwSt7fYo qGUIpt2y0qF3JBEqqpv+167fqYYF960mukX3gAXh/oS+0SngkdeQuY1/9VspJtLJt+EF Unyuc3XeeOzsF2Bp6/V7Ioz5hFSVNFE43cd13ud6VVJgzZ+YYzEkRoPPwog9sOBJs8+B oDtMQisCLW10YPeScU/N5aiGMffBRc/mL5mWrPr1bdZU1U/FkPnKxiYh/3DP/tddSdEI ixsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=AndIk12H; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from ml01.01.org (ml01.01.org. [198.145.21.10]) by mx.google.com with ESMTPS id a8si386209pll.474.2017.12.05.10.08.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Dec 2017 10:08:20 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) client-ip=198.145.21.10; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@linaro.org header.s=google header.b=AndIk12H; spf=pass (google.com: best guess record for domain of edk2-devel-bounces@lists.01.org designates 198.145.21.10 as permitted sender) smtp.mailfrom=edk2-devel-bounces@lists.01.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id D5DD22218E925; Tue, 5 Dec 2017 10:03:48 -0800 (PST) X-Original-To: edk2-devel@lists.01.org Delivered-To: edk2-devel@lists.01.org Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2a00:1450:400c:c0c::244; helo=mail-wr0-x244.google.com; envelope-from=leif.lindholm@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-wr0-x244.google.com (mail-wr0-x244.google.com [IPv6:2a00:1450:400c:c0c::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 513E32218E920 for ; Tue, 5 Dec 2017 10:03:46 -0800 (PST) Received: by mail-wr0-x244.google.com with SMTP id z18so1255179wrb.8 for ; Tue, 05 Dec 2017 10:08:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=z80plHIcfmnuJ7HfT/VWcRXE1Lx7PC9DI33apyw7Z0o=; b=AndIk12Hzi4dPoqXqqk05/sVxqhwceEWT6QoxUGbv1xuDvXwBeeSodxGQnJ1JLNRdT G0tjkr4U7PRA9vHCGj0dV5sazhfEh4erHQGpAmLN/kgSUzqVDDpYJ5oH56MbqMUNurlT p0aJ3Ijn9wAz/NtaTzd4G8Gdv4YVQ5l9ZH/iM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=z80plHIcfmnuJ7HfT/VWcRXE1Lx7PC9DI33apyw7Z0o=; b=b4dDyNyNUxEgWcUan2/QFGw2trq5vdfyo4BzPWTeiXj8bem99n6VeuLKV1P5AABCnc wvA0aJpUtDirbs91Wye/BIvCG6SGBRlKUzumYOaGxULp6aZLXa4QXA00r9JbvUaZPWLx 7FEhbLpxB830b9BiCOwZZf4A5OTd+fJoqSIsD4bFwQL8KTo4HuAizF0H6OJ9R+hyJFIw vX59NzHTGK1GnrLOR/jByP64A0Ls959tUgh/AU7M6RsmzteX3hIZ6bBLT9Zy2oj6FDij ji9A8kfWGu0LtJq9HfO0I3+J/agSGZdZXs0VsfMVwrjt1t73f3tdSAntGODB6bEk/zoZ VOGA== X-Gm-Message-State: AJaThX5tiXxkvkAAm5hwzm9IpApkAn7EWf4Cwgyz1Hp8joWoM9BQgbfn fH0upkef8Q9jAezpMnPsJ4j7DnHQ19c= X-Received: by 10.223.179.215 with SMTP id x23mr16982266wrd.198.1512497296497; Tue, 05 Dec 2017 10:08:16 -0800 (PST) Received: from vanye.hemma.eciton.net (cpc92316-cmbg19-2-0-cust118.5-4.cable.virginm.net. [82.12.0.119]) by smtp.gmail.com with ESMTPSA id v23sm1071296wmh.30.2017.12.05.10.08.14 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Dec 2017 10:08:15 -0800 (PST) From: Leif Lindholm To: edk2-devel@lists.01.org Date: Tue, 5 Dec 2017 18:08:14 +0000 Message-Id: <20171205180814.27267-1-leif.lindholm@linaro.org> X-Mailer: git-send-email 2.11.0 Subject: [edk2] [PATCH] BaseTools: improve C tools build time with GNU X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Liming Gao MIME-Version: 1.0 Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" Commit 9e1131b70b4b ("BaseTools: Update BaseTools top GNUMakefile with the clear dependency") made parallel builds of BaseTools possible. However, the two utilities BrotliCompress and VfrCompile have substantially longer build (and especially link) time than the others - which leads to long waiting times. Build these two tools separately first, in order to reduce build time. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Leif Lindholm --- For comparison, this reduces the build time on my x86 machine (8 cores, 16 threads) down from >9s to <3s. On the Cortex-A53 based 24-core SynQuacer platform, it takes the build time down from 1m26s to 20s. BaseTools/Source/C/GNUmakefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) -- 2.11.0 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel diff --git a/BaseTools/Source/C/GNUmakefile b/BaseTools/Source/C/GNUmakefile index 0dc748267d..b7ddcb5022 100644 --- a/BaseTools/Source/C/GNUmakefile +++ b/BaseTools/Source/C/GNUmakefile @@ -50,9 +50,11 @@ all: makerootdir subdirs LIBRARIES = Common VFRAUTOGEN = VfrCompile/VfrLexer.h # NON_BUILDABLE_APPLICATIONS = GenBootSector BootSectImage -APPLICATIONS = \ +SLOW_APPLICATIONS = \ BrotliCompress \ - VfrCompile \ + VfrCompile + +APPLICATIONS = \ GnuGenBootSector \ BootSectImage \ EfiLdrImage \ @@ -72,7 +74,8 @@ APPLICATIONS = \ SUBDIRS := $(LIBRARIES) $(APPLICATIONS) $(LIBRARIES): $(MAKEROOT)/libs -$(APPLICATIONS): $(LIBRARIES) $(MAKEROOT)/bin $(VFRAUTOGEN) +$(SLOW_APPLICATIONS): $(LIBRARIES) $(MAKEROOT)/bin $(VFRAUTOGEN) +$(APPLICATIONS): $(SLOW_APPLICATIONS) .PHONY: outputdirs makerootdir: