Skip to content

Redrawing room list buffer can be slow when in many rooms #298

Closed
@Rutherther

Description

@Rutherther

OS/platform

Guix System or NixOS

Emacs version and provenance

Tried from both Nix and Guix, both times with jit native compilation enabled.
GNU Emacs 29.4 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0)

Emacs command

./with-emacs.sh --dir /tmp/test

Emacs frame type

GUI

Ement package version and provenance

I've used method in README to obtain from latest commit. That is 3f87a95 when trying this.

Actions taken

  1. execute ement-connect
  2. log in
  3. wait for a bit after the ement room list opens

Observed results

After few seconds Emacs lags, for a few seconds without being able to do anything. This repeats every few seconds between the lags.

Expected results

I should be able to use emacs normally when having ement room list open.

Backtrace

No response

Etc.

       51922  54% + timer-event-handler
       40607  42% + command-execute
        3010   3% + ...
         274   0% + redisplay_internal (C function)
           3   0%   mouse--click-1-maybe-follows-link

I have not used profiler at all till now and I am not sure how to get relevant information. I can run for specific functions, but I don't know what to target.

I observe this behavior both in my regular Emacs installation and on a fresh new emacs version obtained with with-emacs.sh script.

I am on Conduit server. I also have sliding sync running on the server. I am in more than 200 rooms. Few of the rooms are bigger groups. But most of them are bridged DM rooms. I use Mautrix Discord (no guild bridged, only DMs), Mautrix Telegram, Mautrix Whatsapp, Mautrix Meta, Heisenbridge (bridging a few irc groups).

I have tried registering a separate account and join a few rooms (I am in those on my main account) that have more members. I did not observe this behavior on that account.

I have already reached alphapapa through Ement.el room, where it was suggested to open an issue. This was like two weeks ago (sorry for taking so long)

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions