From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#23529: Request for fixing randomize_va_space build issues Date: Tue, 13 Sep 2016 22:24:42 +0300 Message-ID: <83eg4n8ux1.fsf@gnu.org> References: <83eg4vab5o.fsf@gnu.org> <831t0va8br.fsf@gnu.org> <478e7c97-9339-5072-f9c1-ec67a45113aa@cs.ucla.edu> <83h99p8wbh.fsf@gnu.org> <0f0bb7ef-a588-93c3-5d27-c7329c667ed8@cs.ucla.edu> <83d1kd8qb7.fsf@gnu.org> <838tv18mnj.fsf@gnu.org> <83eg4sap3t.fsf@gnu.org> <3fe2aff8-d34e-afa3-a2bf-6e42394d7be6@cs.ucla.edu> <83wpik8f18.fsf@gnu.org> <34fb7c59-cf4a-fddf-98e7-fd4c25c3f395@cs.ucla.edu> <83k2ek83b7.fsf@gnu.org> <24612cc1-cb72-511f-7d52-bb62101906ae@cs.ucla.edu> <83fup6bguo.fsf@gnu.org> <83poo9alyc.fsf@gnu.org> <83intz97rd.fsf@gnu.org> <0d7013e9-fbdf-ebb1-7361-fe8637079cff@cs.ucla.edu> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1473794802 10675 195.159.176.226 (13 Sep 2016 19:26:42 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 13 Sep 2016 19:26:42 +0000 (UTC) Cc: philippe.vaucher@gmail.com, p.stephani2@gmail.com, 23529@debbugs.gnu.org To: Paul Eggert Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Sep 13 21:26:33 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bjtLd-0000ms-7B for geb-bug-gnu-emacs@m.gmane.org; Tue, 13 Sep 2016 21:26:25 +0200 Original-Received: from localhost ([::1]:51269 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bjtLc-0007dZ-DO for geb-bug-gnu-emacs@m.gmane.org; Tue, 13 Sep 2016 15:26:24 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43987) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bjtLK-0007Vt-Cz for bug-gnu-emacs@gnu.org; Tue, 13 Sep 2016 15:26:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bjtLG-0007a6-Cy for bug-gnu-emacs@gnu.org; Tue, 13 Sep 2016 15:26:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:32971) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bjtLG-0007Zs-AA for bug-gnu-emacs@gnu.org; Tue, 13 Sep 2016 15:26:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bjtLG-0001Go-3D for bug-gnu-emacs@gnu.org; Tue, 13 Sep 2016 15:26:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 13 Sep 2016 19:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23529 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 23529-submit@debbugs.gnu.org id=B23529.14737947434854 (code B ref 23529); Tue, 13 Sep 2016 19:26:02 +0000 Original-Received: (at 23529) by debbugs.gnu.org; 13 Sep 2016 19:25:43 +0000 Original-Received: from localhost ([127.0.0.1]:58916 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bjtKw-0001GE-MJ for submit@debbugs.gnu.org; Tue, 13 Sep 2016 15:25:42 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:52840) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bjtKu-0001G2-T9 for 23529@debbugs.gnu.org; Tue, 13 Sep 2016 15:25:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bjtKm-0007Ox-L1 for 23529@debbugs.gnu.org; Tue, 13 Sep 2016 15:25:35 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35082) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bjtKm-0007Ob-De; Tue, 13 Sep 2016 15:25:32 -0400 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3177 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1bjtKV-0000gW-Pf; Tue, 13 Sep 2016 15:25:30 -0400 In-reply-to: <0d7013e9-fbdf-ebb1-7361-fe8637079cff@cs.ucla.edu> (message from Paul Eggert on Tue, 13 Sep 2016 08:51:47 -0700) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:123270 Archived-At: > Cc: p.stephani2@gmail.com, 23529@debbugs.gnu.org > From: Paul Eggert > Date: Tue, 13 Sep 2016 08:51:47 -0700 > > Eli Zaretskii wrote: > > the idea is to dump the dumping (pun intended), and instead > > load the preloaded packages upon each session start. > > This approach could well work. It addresses the portability concerns with > malloc, as it means we can just use the system malloc. If it has acceptable > performance and its bugs can be fixed, it would be a good way to go. That's the goal, yes. > My main worry is performance. On the desktop that I'm typing this message on, > emacs -Q takes about 40 ms to start up in batch mode, about 90 ms in a terminal, > and about 300 ms on a graphical display. These are the sorts of times that I'd > like to see with the proposed approach too. (This desktop is using a 4-year-old > Xeon E3-1225 V2 CPU, and Emacs is stored on flash and typically cached in RAM.) I don't see why we couldn't keep these times, or come close, if your disk is flash memory. I got 0.2 sec with a real disk, in a 32-bit build with wide ints, and that was without any serious attempt to find the hot spots and optimize them. > By "dump the dumping" I assume you mean withdraw the traditional dump-emacs > function. Yes. Instead, there should be mostly Lisp code to produce a single .elc file for all the preloaded stuff, and calculate values of some variables that can only be recorded at build time (like source-directory, for example).