From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Native compilation on Windows, was Re: Bootstrap Compilation Speed Date: Sun, 30 Jan 2022 20:34:45 +0200 Message-ID: <83bkzt9inu.fsf@gnu.org> References: <8635li3mog.fsf@duenenhof-wilhelm.de> <86y23a10fy.fsf@duenenhof-wilhelm.de> <865yqb1lsz.fsf@duenenhof-wilhelm.de> <861r0y17cf.fsf@duenenhof-wilhelm.de> <86v8y9ywa4.fsf@duenenhof-wilhelm.de> <83ee4xjcn7.fsf@gnu.org> <86k0epyoly.fsf@duenenhof-wilhelm.de> <837dapj82m.fsf@gnu.org> <86czkgztcv.fsf@duenenhof-wilhelm.de> <83zgnkijfo.fsf@gnu.org> <867daoyuhq.fsf@duenenhof-wilhelm.de> <83lez4hu6g.fsf@gnu.org> <86r18wx6zy.fsf@duenenhof-wilhelm.de> <83czkfj561.fsf@gnu.org> <83sft59ut1.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37389"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: "H. Dieter Wilhelm" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Jan 30 19:37:04 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nEF4R-0009Z5-JX for ged-emacs-devel@m.gmane-mx.org; Sun, 30 Jan 2022 19:37:03 +0100 Original-Received: from localhost ([::1]:46184 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nEF4Q-0002l7-DH for ged-emacs-devel@m.gmane-mx.org; Sun, 30 Jan 2022 13:37:02 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:34652) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nEF2I-0001ep-V9 for emacs-devel@gnu.org; Sun, 30 Jan 2022 13:34:50 -0500 Original-Received: from [2001:470:142:3::e] (port=52348 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nEF2I-0002kL-Fn; Sun, 30 Jan 2022 13:34:50 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=zS+hphlnZIcPOHR3Sref70rC6V317kCXRnsD31DBUis=; b=r3EMyLZEiDn3 bXzejc5U89tB2rJgX010jShq0ozmSuq9GUKBiveUMxjVhT1ksB9csccUXwjyaBdCZHMK3ZLUyAigT P8zGwgPVasgZTdm/56Cw4FFTo6+HLDMt09L4ul39hwB30gv7aM3riWTdiz2V1RQqkZ9w/1YfNfERV RROkHOy0LsPn7JebZbmk7fVz+9QI4h0TG4A3Lf/evfS6CNv0j32/0iFqj0QG9fCI8ywHNhCau2LvQ F/amDoOd0wSJqBLPmn3gXSmYVVId+a0MRrM1g90NK/AqIzsO7i0uuiYglUgeIBlr3soJKWOCy+kUc 3hmDvA/Q7gTbD5HAoMPgVg==; Original-Received: from [87.69.77.57] (port=3913 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nEF2H-00013e-W8; Sun, 30 Jan 2022 13:34:50 -0500 In-Reply-To: (dieter@duenenhof-wilhelm.de) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:285630 Archived-At: > From: "H. Dieter Wilhelm" > Cc: emacs-devel@gnu.org > Date: Sun, 30 Jan 2022 19:12:25 +0100 > > >> I'm curious about the hyperthreading potential on my 4 core Intel laptop > >> for doing compilations. And checked Emacs-28.0.91 from Corwin with (setq > >> native-comp-async-jobs-number 8) vs 4 jobs. My init.el forces Emacs to > >> compile over 200 .eln files and it took about 5'40" with 8 logical > >> processors and 7'7" with 4 logical processors. > > > > How many execution units you actually have there? > > I think you mean with "execution units" what the task manager calls > "cores". This computer has 4 cores and 8 logical processors as you can > see in the attached image from it's task manager. If all you have is 8 execution units, using them all for compilation will indeed not show twice the speed as with 4 jobs, because the OS needs some of the CPU resources to do its job. I generally find the default of half the execution units used for background native compilation as adequate: it lets me work in Emacs with almost no visible slowdown while JIT compilation goes on.