SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
GccEmacs refers to the --with-native-compilation configuration option when building Emacs, which adds support for compiling EmacsLisp to native code using libgccjit. All of the Elisp packages shipped with Emacs are native-compiled, providing a noticeable performance improvement out-of-the-box. Third-party packages are also compiled to achieve further performance improvements.
From Doom Emacs that rang a bell :
Quote:
Users will see a substantial performance gain by building Emacs with native compilation support, availible in emacs 28+.
I do not use emacs, but users who requested and tried it did not find any issue or drawback switching to emacs-nativecomp (package version 57.0 was provided on Tuesday 11 April 2023, updated since)
That would make things easier to get the modded emacs to run
You'd also need --enable-host-shared which comes at a performance cost. The recommended solution for distributors is to build gcc twice: first just for jit with --enable-host-shared, and then again for everything else without --enable-host-shared.
BTW, the native compilation will make emacs use a lot more space in each users home directory for all the compiled objects — unless you use --with-native-compilation=aot (which will result in then all going into /usr at emacs build time.
As for the emacs package itself, IMO it'd be best to split the "with X11" and "without X11" builds into separate packages and perhaps put one of them (I'd suggest the without X11) in extra/ as an alternative (or just drop it if no one cares about it).
Vala 0.56.14
============
* Various improvements and bug fixes:
- codegen: Generate compatible wrapper of ref-void functions [#1486]
- vala: Prevent usage of strlen() on non-null-terminated string [#1485]
* Bindings:
- glib-2.0: Add new symbols from 2.78
- gstreamer-1.0: Make ElementFactory.make()'s name parameter default to null
- gtk4-wayland: Add the missing wayland-client bindings
- wayland-client: Complete the binding
You'd also need --enable-host-shared which comes at a performance cost. The recommended solution for distributors is to build gcc twice: first just for jit with --enable-host-shared, and then again for everything else without --enable-host-shared.
That's far out of my league.
Thanks for raising this.
I guess that will happen if Pat thinks it worths it. Seems to much of a hassle for me at this very moment.
Plocate Is A Much Faster locate (Drop-In Replacement For mlocate)
Quote:
plocate is a newer, much faster locate. It's based on posting lists, giving much faster searches on a much smaller index.
The command-line tool is a drop-in replacement for mlocate (Merging Locate; a restricted-access database, only showing filenames accessible to the user) in nearly all aspects, including reusing the mlocate database (plocate creates its own index using plocate-build which reads the database made by updatedb), and is fast on SSDs and HDDs alike.
Quote:
plocate works by creating an inverted index over trigrams (combinations of three bytes) in the search strings, which allows it to rapidly narrow down the set of candidates to a very small list, instead of linearly scanning through every entry. It does nearly all I/O asynchronously using io_uring if available (Linux 5.1+), which reduces the impact of seek latency on systems without SSDs.
Thanks to your post I tried it out, and... first try failed to find the file I was looking for (after "removepkg mlocate", "plocate-build /var/lib/mlocate/mlocate.db /var/lib/plocate/plocate.db", "/etc/cron.daily/plocate"). I was perplexed until finding the above article.
So changing PRUNE_BIND_MOUNTS to "no" in /etc/updatedb.conf and rerunning /etc/cron.daily/plocate, now it works.
Much faster I might add:
Code:
time mlocate <file>:
real 1m26.909s
user 1m26.469s
sys 0m0.436s
time plocate <file>:
real 0m0.014s
user 0m0.008s
sys 0m0.005s
So yeah I'm switching to plocate because I often find myself avoiding using mlocate because of how slow it is for me.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.