From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Speeding up parallel compilation Date: Wed, 05 Sep 2012 23:13:03 -0400 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1346901190 5992 80.91.229.3 (6 Sep 2012 03:13:10 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 6 Sep 2012 03:13:10 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Sep 06 05:13:12 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1T9SWl-000662-LP for ged-emacs-devel@m.gmane.org; Thu, 06 Sep 2012 05:13:11 +0200 Original-Received: from localhost ([::1]:55092 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T9SWi-0008UH-7y for ged-emacs-devel@m.gmane.org; Wed, 05 Sep 2012 23:13:08 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:33392) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T9SWg-0008U4-1Q for emacs-devel@gnu.org; Wed, 05 Sep 2012 23:13:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1T9SWf-0006AY-8V for emacs-devel@gnu.org; Wed, 05 Sep 2012 23:13:05 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.182]:40088) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T9SWf-0006AO-4I for emacs-devel@gnu.org; Wed, 05 Sep 2012 23:13:05 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuwFAG6Zu09FxINJ/2dsb2JhbABEr1qEN4EIgnJyJhgNiEWYUqE3jSaDHgOjM4FYgwU X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="197626436" Original-Received: from 69-196-131-73.dsl.teksavvy.com (HELO fmsmemgm.homelinux.net) ([69.196.131.73]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 05 Sep 2012 23:13:03 -0400 Original-Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 2B4C0AE304; Wed, 5 Sep 2012 23:13:03 -0400 (EDT) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.182 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:153086 Archived-At: The recent change I installed which macro-expands Elisp code eagerly upon load does not speed up sequential compilation very much, but it seems to help parallel compilation significantly: on a 12-core 24-threads machine, "make -j24 bootstrap" went down from 2:20 to 1:50, and the CPU utilization went up (from 800% to 1000%). In other words, this mostly sped up a part of the compilation which does not parallelize well. I guess that would be either the construction of loaddefs, or the compilation of the compiler. So, lucky those with manycore systems. Stefan