From: Alan Mackenzie <acm@muc.de>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org, akrl@sdf.org
Subject: Re: master 289000e: Merge branch 'feature/native-comp' into trunk
Date: Mon, 26 Apr 2021 14:54:11 +0000 [thread overview]
Message-ID: <YIbUE9tdMkOYcvSQ@ACM> (raw)
In-Reply-To: <83czuhjh0r.fsf@gnu.org>
Hello, Eli.
On Mon, Apr 26, 2021 at 16:45:56 +0300, Eli Zaretskii wrote:
> > Date: Mon, 26 Apr 2021 13:21:25 +0000
> > Cc: akrl@sdf.org, emacs-devel@gnu.org
> > From: Alan Mackenzie <acm@muc.de>
> > > My suggestion is to load and run the code you want to benchmark, but
> > > after the benchmark finishes, leave Emacs running until 'ps' no longer
> > > shows inferior Emacs processes run in the background -- those are the
> > > subprocesses Emacs starts to natively-compile every .el file your
> > > program loads. Once all the native-compilation subprocesses exit,
> > > exit your interactive session, and then run the benchmark again; this
> > > time it should show the full speedup of native-compilation.
> > I've tried that, but I don't think the native compile versions of CC Mode
> > got loaded. If they had been loaded, there would have been _some_ speed
> > up. What I did was, in essence,
> > M-: (load-file "~/emacs/emacs.git/master/lisp/progmodes/cc-defs.elc")
> If you specify the .elc extension explicitly, Emacs won't load the
> .eln file instead. Use "M-x load-library RET cc-defs RET" instead.
OK, I've started emacs -Q, which should surely pick up the natively
compiled files. But it doesn't seem to. load-history lists only .elc
files, even for pre-loaded files. I'm seeing a speed-up of, perhaps 5% -
10%, but that's surely because of all the other natively compiled files,
not the CC Mode ones.
Surely there's a way to check that .eln files have actually been loaded?
When I do M-x locate-library cc-mode, it lists the .el file inside the
emacs-28 directory.
OK, I've tried again with M-x load-library RET cc-mode RET, which gave me
a message stating it was loading the native compiled file. I then did
the same for cc-engine and cc-fonts. I still see only the 5% - 10% speed
up. (CC Mode has already been converted to lexical binding.)
> (And why do you need to load the CC mode files by hand? why not let
> Emacs load them as needed?)
My .emacs pushes several directories onto load-path, including my
"normal" CC Mode directory. This would supersede the Emacs 28 version.
I typically switch between CC Mode versions several times a session,
sometimes many times. That's impractical with load-path.
> > > We have a lot to do in the documentation department for this feature.
> > > You can wait until we are done (which could take a while), or you
> > > could ask questions (but in the latter case please be more specific,
> > > so that the answers are useful for you).
> > Sorry, I got the impression that, with the merge, the feature was almost
> > ready for full time use in Emacs.
> I think it's ready. There are people who use it for several months
> already. I just didn't feel it would be justified to delay the merge
> because of the documentation.
I must be doing something differently from these people, but I can't
identify what. Native compilation just doesn't seem to be working for
me, yet. How much of a speed up should it give me? Surely more than 5%
- 10%?
--
Alan Mackenzie (Nuremberg, Germany).
next prev parent reply other threads:[~2021-04-26 14:54 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20210425182503.25223.81072@vcs0.savannah.gnu.org>
[not found] ` <20210425182508.6CC7C2094D@vcs0.savannah.gnu.org>
2021-04-25 18:36 ` master 289000e: Merge branch 'feature/native-comp' into trunk Andrea Corallo via Emacs development discussions.
2021-04-25 18:40 ` Eli Zaretskii
2021-04-25 18:59 ` Andrea Corallo via Emacs development discussions.
2021-04-25 20:25 ` Eli Zaretskii
2021-04-25 18:45 ` Óscar Fuentes
2021-04-25 20:03 ` Alan Mackenzie
2021-04-25 20:14 ` Eli Zaretskii
2021-04-25 21:55 ` Alan Mackenzie
2021-04-26 11:40 ` Eli Zaretskii
2021-04-26 13:21 ` Alan Mackenzie
2021-04-26 13:45 ` Eli Zaretskii
2021-04-26 14:54 ` Alan Mackenzie [this message]
2021-04-26 15:12 ` Eli Zaretskii
2021-04-26 17:02 ` Alan Mackenzie
2021-04-26 17:13 ` Stefan Monnier
2021-04-26 17:25 ` Eli Zaretskii
2021-04-28 11:34 ` Alan Mackenzie
2021-04-28 12:26 ` Eli Zaretskii
2021-04-28 12:32 ` Alan Mackenzie
2021-04-28 13:01 ` Eli Zaretskii
2021-04-28 19:09 ` Andrea Corallo via Emacs development discussions.
2021-04-26 15:33 ` Óscar Fuentes
2021-04-26 15:58 ` Eli Zaretskii
2021-04-26 16:30 ` Óscar Fuentes
2021-04-26 17:11 ` Alan Mackenzie
2021-04-26 20:02 ` Óscar Fuentes
2021-04-28 14:07 ` Alan Mackenzie
2021-04-28 15:10 ` Óscar Fuentes
2021-04-26 15:37 ` Stefan Monnier
2021-04-26 16:06 ` Andrea Corallo via Emacs development discussions.
2021-04-26 17:05 ` Alan Mackenzie
2021-04-25 21:48 ` Stefan Monnier
2021-04-25 22:41 ` Stefan Kangas
2021-04-25 22:57 ` Clément Pit-Claudel
2021-04-26 16:16 ` Andrea Corallo via Emacs development discussions.
2021-04-26 13:03 ` wilde
2021-04-26 13:18 ` Minimal recommended version of gcc/libgccjit for native-comp (was: master 289000e: Merge branch 'feature/native-comp' into trunk) wilde
2021-04-26 15:58 ` Minimal recommended version of gcc/libgccjit for native-comp Stefan Monnier
2021-04-26 16:16 ` Eli Zaretskii
2021-04-26 16:32 ` Andrea Corallo via Emacs development discussions.
2021-04-26 16:54 ` Eli Zaretskii
2021-04-26 20:53 ` Andrea Corallo via Emacs development discussions.
2021-04-27 3:52 ` Richard Stallman
2021-04-26 16:18 ` Andrea Corallo via Emacs development discussions.
2021-04-26 16:12 ` Andrea Corallo via Emacs development discussions.
2021-04-27 14:21 ` wilde
2021-04-27 16:35 ` Andrea Corallo via Emacs development discussions.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YIbUE9tdMkOYcvSQ@ACM \
--to=acm@muc.de \
--cc=akrl@sdf.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).