emacs-orgmode
[Top][All Lists]
Advanced

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

org-persist-write slowing down kill-buffer


From: Karthik Chikmagalur
Subject: org-persist-write slowing down kill-buffer
Date: Wed, 17 Apr 2024 20:02:22 -0700

Hi,

I've been noticing that kill-buffer blocks Emacs for a noticeable
period when killing org buffers.  Here are elp results obtained by
instrumenting org-persist-* and kill-buffer:

| Function name                     | Call count | Elapsed time | Average time |
|-----------------------------------+------------+--------------+--------------|
| kill-buffer                       |         38 | 2.5647546329 | 0.0674935429 |
| org-persist-write-all-buffer      |          1 |  2.562779994 |  2.562779994 |
| org-persist-write-all             |          1 |   2.56277329 |   2.56277329 |
| org-persist-write                 |          1 |  1.627834788 |  1.627834788 |
| org-persist--write-elisp-file     |          1 |  0.312172392 |  0.312172392 |
| org-persist--find-index           |       4808 | 0.0480629129 | 9.996...e-06 |
| org-persist--normalize-associated |          4 |  0.007245059 | 0.0018112647 |
| org-persist--normalize-container  |          7 | 0.0001262719 | 1.803...e-05 |
| org-persist--get-collection       |          1 |  0.000113982 |  0.000113982 |
| org-persist-write:elisp           |          2 | 2.647...e-05 | 1.323...e-05 |
| org-persist--display-time         |          1 |    3.772e-06 |    3.772e-06 |
| org-persist-write:version         |          1 |    1.467e-06 |    1.467e-06 |

It blocks Emacs for about 3 seconds each time.  Any Org file with > 500
lines causes this behavior.

I've also attached the sampling profiler output from killing an Org
buffer.

Some facts that might be relevant:

- I'm using the WIP LaTeX preview system fork of Org, but there are no
  LaTeX previews in the Org buffers that I run these tests on.  (There
  aren't even any LaTeX fragments.)

- My org-persist-dir is 627MB in size.

This is Emacs 29.3 (pgtk branch), the Org commit that the LaTeX preview
patches are rebased on is 1ae978f940c0f88473f2232177c63a0de7fb7a1c.

Let me know if I can help with more information.

Karthik

Attachment: kill-buffer-profiler-report.eld
Description: Binary data


reply via email to

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