emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Enabling native compilation by default when libgccjit is present


From: Jim Myhrberg
Subject: Re: Enabling native compilation by default when libgccjit is present
Date: Sun, 5 Dec 2021 20:00:50 +0000

Hi, first time I'm participating on the devel list here, but I wanted to chime 
in with my experience using native compilation on macOS.

> I'd be curious to know where people are seeing speedups.

On macOS, native compilation is the single biggest improvement/feature I've 
seen since I started using Emacs in 2011.

Before native-comp, Emacs' performance was for the most part acceptable, 
sluggish in some areas, and sometimes just plain horrible. Especially in larger 
Ruby RSpec test files (over 400-500 lines), where each keystroke could take 
somewhere around 100-1000ms to register. Native-comp solved all of that for me, 
with everything being fast and responsive, even those worst case scenario RSpec 
files.

Basically, I simply cannot live without native compilation anymore, to the 
point I've gone through the hassle to setup nightly builds via GitHub Actions, 
so new builds are waiting for me when I wake up.

As for if native compilation should be enabled by default, I'd say it might be 
simpler/safer if it needs to be explicitly enabled. One reason for it, is that 
on macOS "make install" with native-comp enabled does not produce a Emacs.app 
bundle which can be distributed to other machines without them first needing to 
install gcc, libgccgit, and potentially other homebrew formulas. Bundling all 
external dependencies including libgccjit/gcc into Emacs.app is a rather 
complicated process, made even more complicated if you want to sign and 
notarize the app too. I've got a quite a bit of code in my build script to 
handle it for my own builds.

--jimeh


reply via email to

[Prev in Thread] Current Thread [Next in Thread]