i didn't benchmark, but export of a 900 word subtree seems to take 15s in 8.3 (1-2s before 8.3):
- command-execute 14966 95% - call-interactively 14966 95% - org-export-dispatch 14633 93% - #<lambda 0x3a8ec5b2d3fa3ab8> 14600 93% - org-ascii-export-to-ascii 14600 93% - org-export-to-file 14600 93% - org-export-as 14600 93% - org-export-get-environment 6493 41% - org-id-find 6441 41% - org-id-update-id-locations 6236 39% - org-get-agenda-file-buffer 6020 38% - find-file-noselect 6016 38% - find-file-noselect-1 6012 38% - after-find-file 5960 38% - normal-mode 5956 37% - funcall 5956 37% - #<compiled 0x229789> 5956 37% - set-auto-mode 5956 37% - set-auto-mode-0 3788 24% - org-mode 3788 24% - org-set-startup-visibility 3660 23% - org-cycle-hide-drawers 3168 20% + org-element-at-point 2004 12% + org-flag-drawer 356 2% + org-overview 272 1% org-set-visibility-according-to-property 20 0% + org-cycle-hide-archived-subtrees 8 0% + org-set-regexps-and-options 32 0% + run-mode-hooks 28 0% + org-refresh-effort-properties 24 0% org-update-radio-target-regexp 24 0% + org-macro-initialize-templates 20 0% + funcall 2164 13% + set-auto-mode-1 4 0% + run-hooks 4 0% + funcall 52 0% + create-file-buffer 4 0% + org-find-base-buffer-visiting 4 0% + org-agenda-files 52 0% + file-truename 4 0% org-release-buffers 4 0% + org-id-find-id-in-file 201 1% + org-export--get-inbuffer-options 12 0% + org-element-context 12 0% - run-hook-with-args 5332 34% - mymy-org-export-par-in-inline-fn 5332 34% - org-footnote-normalize 5328 33% - org-footnote-get-definition 3816 24% - byte-code 3816 24% - org-element-context 28 0% + byte-code 28 0% + org-footnote-delete-definitions 976 6% + org-fill-paragraph 312 1% + org-footnote-get-next-reference 168 1% + jit-lock-after-change 16 0% mapconcat 4 0% + org-export--merge-external-footnote-definitions 1703 10% + org-export--delete-comments 860 5% org-update-radio-target-regexp 60 0% + org-set-regexps-and-options 48 0% + org-export-execute-babel-code 28 0% + org-macro-initialize-templates 20 0% + org-export-data 16 0% + org-element-parse-buffer 12 0% + org-export-copy-buffer 8 0% org-element-normalize-string 4 0% + org-ascii-inner-template 4 0% + org-export--dispatch-ui 33 0% + ido-hacks-execute-extended-command 308 1% + next-line 19 0% + profiler-report-toggle-entry 3 0% + previous-line 3 0% + ... 366 2% + redisplay_internal (C function) 297 1% + rcirc-filter 45 0% + timer-event-handler 6 0% i do not know why it is searching 20 files for org id's, as there are no id links. the thing i am doing different from emacs -Q is this, which nicolas suggested, but seems no longer to work in 8.3: (add-hook 'org-export-before-parsing-hook 'mymy-org-export-par-in-inline-fn) (defun mymy-org-export-par-in-inline-fn (backend) "Accept multiple inline footnote paragraphs." (unless (org-export-derived-backend-p backend 'latex) (org-footnote-normalize) ;; =alpha i guess it sticks \par in there for you (while (re-search-forward "\\\\par\\s-*" nil t) (replace-match "\n\n")))) thanks. samuel