* Bad save performance on `main` branch
@ 2022-08-15 21:10 Ragnar Groot Koerkamp
2022-08-15 23:08 ` Ihor Radchenko
0 siblings, 1 reply; 2+ messages in thread
From: Ragnar Groot Koerkamp @ 2022-08-15 21:10 UTC (permalink / raw)
To: emacs-orgmode
[-- Attachment #1: Type: text/plain, Size: 13863 bytes --]
Hi all,
I ran into an issue [1] [2] with ox-hugo where exporting an org file on
auto-save takes very long (3+ seconds) compared to ~0.2s normally. This is
using commit 00adad935 on the main branch from a few days back (using
Doom). See below for a cpu profile.
After switching back to the bugfix branch (6e991f4bb), the auto-save is
fast again. Again see the cpu profile below.
Steps to reproduce are already in [1], but I hope the profiles below should
give a start at finding the cause of this issue.
Thanks!
1: https://github.com/kaushalmodi/ox-hugo/issues/665
2: https://github.com/kaushalmodi/ox-hugo/discussions/551
Slow ~3s export on branch main (00adad935):
7354 93% - command-execute
7354 93% - funcall-interactively
7354 93% - save-buffer
7354 93% - basic-save-buffer
7349 93% - run-hooks
7323 93% - org-hugo-export-wim-to-md-after-save
7323 93% - org-hugo-export-wim-to-md
7321 93% - org-hugo--export-file-to-md
7318 93% - org-hugo-export-to-md
7314 92% - org-export-to-file
7314 92% - apply
7305 92% - +org--fix-async-export-a
7305 92% - let
7305 92% - apply
7305 92% - #<compiled -0x18adb202b7f79385>
7305 92% - apply
7305 92% - +org--dont-trigger-save-hooks-a
7305 92% - let
7305 92% - apply
7305 92% - #<compiled 0x1dde7d5b13500726>
7301 92% - org-export-as
7301 92% - apply
7301 92% - +org--fix-async-export-a
7301 92% - let
7298 92% - apply
7298 92% - #<compiled 0x1b319a47596dd1a2>
6991 88% - org-export-data
6991 88% - mapconcat
6991 88% - #<compiled 0x61ea8f62f7d4cf2>
6991 88% - org-export-data
6987 88% - mapconcat
6987 88% - #<compiled 0x61ea8f62f7d4cf2>
6983 88% - org-export-data
6977 88% - mapconcat
6977 88% - #<compiled
0x61ea8f62f7d4cf2>
6977 88% - org-export-data
6971 88% - mapconcat
6971 88% - #<compiled
0x61ea8f62f7d4cf2>
6971 88% - org-export-data
6775 86% - mapconcat
6775 86% - #<compiled
0x61ea8f62f7d4cf2>
6775 86% - org-export-data
5356 68% -
org-blackfriday-latex-fragment
5354 68% -
org-html-format-latex
5321 67% -
org-export-copy-buffer
5039 64% - #<compiled
0x282f7cab5f98f9e>
4994 63% - org-mode
4499 57% - run-mode-hooks
4485 57% - run-hooks
1777 22% +
global-flycheck-mode-enable-in-buffers
939 11% +
global-emojify-mode-enable-in-buffers
556 7% +
evil-mode-enable-in-buffers
449 5% +
yas-global-mode-enable-in-buffers
322 4% +
ws-butler-global-mode-enable-in-buffers
254 3% +
global-company-mode-enable-in-buffers
122 1% +
global-font-lock-mode-enable-in-buffers
38 0% +
+format-enable-on-save-maybe-h
7 0% +
global-undo-fu-session-mode-enable-in-buffers
6 0% +
global-anzu-mode-enable-in-buffers
6 0% +
global-evil-surround-mode-enable-in-buffers
3 0% +
evil-snipe-override-mode-enable-in-buffers
14 0% + apply
157 1% + outline-mode
123 1% +
org-fold-initialize
96 1% +
org-element-cache-reset
49 0% + add-hook
36 0% +
org-install-agenda-files-menu
13 0% +
org-set-regexps-and-options
7 0% +
org-macro-initialize-templates
4 0%
set-face-foreground
3 0% +
org-persist-load
45 0% +
org-element-cache-reset
244 3%
org-export--generate-copy-script
5 0% +
generate-new-buffer
15 0% + org-format-latex
10 0% + erase-buffer
5 0% #<compiled
0x13978e1a44134e5b>
3 0%
jit-lock-after-change
2 0%
org-blackfriday-escape-chars-in-equation
1087 13% +
org-blackfriday-table-cell
273 3% +
org-blackfriday-latex-environment
59 0% + mapconcat
192 2% +
org-blackfriday-latex-fragment
4 0% + org-hugo-link
4 0%
org-element-normalize-string
2 0% + org-hugo-link
6 0% + org-hugo-headline
4 0% org-element-normalize-string
227 2% + org-export-copy-buffer
52 0% + org-babel-exp-process-buffer
10 0% + org-element-parse-buffer
6 0% + org-cite-process-citations
3 0% + org-hugo-inner-template
3 0% + org-export-filter-apply-functions
3 0% + #<compiled 0x13978042ddab4e5b>
3 0% + let
2 0% + write-file
2 0% #<compiled -0x1c8d77422d9b9897>
9 0% + lsp--on-set-visited-file-name
4 0% + org-export-get-environment
3 0% + org-export-get-environment
2 0% + org-hugo--export-subtree-to-md
22 0% + undo-fu-session-save-safe
4 0% + org-encrypt-entries
3 0% + basic-save-buffer-1
1 0% + vc-before-save
1 0% + vc-after-save
499 6% + ...
4 0% + timer-event-handler
4 0% ws-butler-global-mode-check-buffers
3 0% evil-mode-check-buffers
3 0% solaire-global-mode-check-buffers
1 0% evil-repeat-pre-hook
Fast ~0.2s export on branch bugfix (6e991f4bb):
238 100% - command-execute
221 92% - funcall-interactively
217 91% - save-buffer
217 91% - basic-save-buffer
203 85% - run-hooks
159 66% - org-hugo-export-wim-to-md-after-save
159 66% - org-hugo-export-wim-to-md
143 60% - org-id-update-id-locations
123 51% - openwith-file-handler
123 51% - apply
106 44% - lsp--on-set-visited-file-name
106 44% - apply
100 42% - +org--dont-trigger-save-hooks-a
100 42% - let
100 42% - apply
100 42% - #<subr org-export-to-file>
100 42% - org-export-as
100 42% - apply
100 42% - +org--fix-async-export-a
100 42% - let
97 40% - apply
81 34% - #<subr org-export-as>
57 23% - org-export-data
57 23% - mapconcat
57 23% - #<compiled -0x27df9e1e45ba910>
57 23% - org-export-data
43 18% - mapconcat
43 18% - #<compiled -0x27df9e1e45ba910>
43 18% - org-export-data
40 16% - mapconcat
40 16% - #<compiled -0x27df9e1e45ba910>
40 16% - org-export-data
40 16% - mapconcat
40 16% - #<compiled -0x27df9e1e45ba910>
40 16% - org-export-data
40 16% - mapconcat
40 16% - #<compiled
-0x27df9e1e45ba910>
40 16% - org-export-data
22 9% -
org-blackfriday-latex-fragment
19 7% - org-html-format-latex
16 6% - #<compiled
-0x1c8cd31a99a81897>
13 5% - kill-buffer
13 5% - #<compiled
-0x1ca79d0dde8bbf0b>
13 5% -
doom-buffer-frame-predicate
13 5% - or
13 5% - doom-real-buffer-p
13 5% - let*
13 5% - if
13 5% - progn
13 5% - and
13 5% - or
6 2% -
run-hook-with-args-until-success
6 2% -
+magit-buffer-p
6 2%
save-current-buffer
3 1% - org-format-latex
3 1% + org-element-context
3 1%
org-blackfriday-escape-chars-in-equation
14 5% - org-hugo-link
4 1% url-encode-url
3 1% +
org-html-standalone-image-p
3 1% +
org-hugo--attachment-rewrite-maybe
4 1% + org-blackfriday-plain-text
3 1% org-hugo-heading
7 2% + org-blackfriday-table-cell
4 1% + org-hugo-keyword
3 1% org-hugo-heading
7 2% + org-element-parse-buffer
7 2% + org-cite-process-citations
4 1% + org-hugo-inner-template
3 1% + org-export-get-environment
3 1% + org-export--prune-tree
16 6% - #<compiled 0x154564ef426bd44>
16 6% - apply
16 6% - +org--dont-trigger-save-hooks-a
16 6% - let
16 6% - apply
16 6% - #<subr org-export-to-file>
16 6% - org-export-as
16 6% - apply
16 6% - +org--fix-async-export-a
16 6% - let
16 6% - apply
16 6% - #<subr org-export-as>
7 2% + org-babel-exp-process-buffer
3 1% + org-export-copy-buffer
3 1% + org-export-data
3 1% + --first
6 2% + #<subr set-visited-file-name>
17 7% + insert-file-contents
10 4% + org-mode
4 1% + org-agenda-files
3 1% file-truename
10 4% + org-hugo--export-file-to-md
6 2% + org-hugo--buffer-has-valid-post-subtree-p
40 16% - undo-fu-session-save-safe
40 16% - undo-fu-session--save-impl
17 7% - undo-fu-session--encode
13 5% - undo-fu-session--walk-tree
6 2% - undo-fu-session--walk-tree
3 1% + undo-fu-session--walk-tree
6 2% - write-region
6 2% - jka-compr-handler
6 2% - apply
6 2% - jka-compr-write-region
3 1% - jka-compr-run-real-handler
3 1% + apply
3 1% jka-compr-call-process
4 1% + undo-fu-session--make-file-name
3 1% undo-fu-session--equivtable-encode
4 1% + flycheck-handle-save
5 2% + vc-before-save
4 1% + vc-after-save
3 1% + run-hook-with-args-until-success
4 1% + doom/toggle-profiler
17 7% + byte-code
0 0% + ...
[-- Attachment #2: Type: text/html, Size: 18805 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Bad save performance on `main` branch
2022-08-15 21:10 Bad save performance on `main` branch Ragnar Groot Koerkamp
@ 2022-08-15 23:08 ` Ihor Radchenko
0 siblings, 0 replies; 2+ messages in thread
From: Ihor Radchenko @ 2022-08-15 23:08 UTC (permalink / raw)
To: Ragnar Groot Koerkamp; +Cc: emacs-orgmode
Ragnar Groot Koerkamp <ragnar.grootkoerkamp@gmail.com> writes:
> Steps to reproduce are already in [1], but I hope the profiles below should
> give a start at finding the cause of this issue.
I am sorry, but I am unable to reproduce anything using the provided
.org file. The file contains references to non-existing bibliography.
Could you please detail the steps starting from emacs -Q?
> org-export-copy-buffer
> 5039 64% - #<compiled 0x282f7cab5f98f9e>
> 4994 63% - org-mode
> 4499 57% - run-mode-hooks
> 4485 57% - run-hooks
This is very odd. org-export-copy-buffer explicitly disables all the
mode hooks:
;; Set major mode. Ignore `org-mode-hook' as it has been run
;; already in BUFFER.
(let ((org-mode-hook nil) (org-inhibit-startup t)) (org-mode))
--
Ihor Radchenko,
Org mode contributor,
Learn more about Org mode at https://orgmode.org/.
Support Org development at https://liberapay.com/org-mode,
or support my work at https://liberapay.com/yantar92
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-08-15 23:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-15 21:10 Bad save performance on `main` branch Ragnar Groot Koerkamp
2022-08-15 23:08 ` Ihor Radchenko
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.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).