From: Fabrice Popineau <fabrice.popineau@gmail.com>
To: emacs-devel@gnu.org
Subject: Re: How to make 'load' fast in window?
Date: Tue, 14 Jun 2016 07:36:19 +0000 (UTC) [thread overview]
Message-ID: <loom.20160614T092657-361@post.gmane.org> (raw)
In-Reply-To: 65b7225c.5e6c.1554cf0f4a4.Coremail.tumashu@163.com
tumashu <tumashu <at> 163.com> writes:
> download pyim-bigdict-cf210fa066f2fa18c1606eeddfffcf84.el from
https://github.com/tumashu/tumashu-temp-filesand eval:
>
> #+BEGIN_EXAMPLE (setq pyim-dict-cache (with-temp-
buffer (insert-file-contents "/path/to/pyim-bigdict-
cf210fa066f2fa18c1606eeddfffcf84.el") (eval (read (current-
buffer)))))#+END_EXAMPLE
>
So, starting from `emacs -Q' on an i7-4702HQ with emacs-25.0.94, windows 10, I
get a user time of about 4s and the following profiler report:
- command-execute 441 79%
- call-interactively 441 79%
- funcall-interactively 436 78%
- eval-last-sexp 419 75%
- elisp--eval-last-sexp 419 75%
- eval 213 38%
- setq 213 38%
- let 213 38%
- save-current-buffer 213 38%
- unwind-protect 213 38%
- progn 213 38%
eval 158 28%
- insert-file-contents 11 1%
- set-auto-coding 11 1%
- find-auto-coding 11 1%
sgml-html-meta-auto-coding-function 7 1%
elisp--eval-last-sexp-print-value 206 37%
- execute-extended-command 17 3%
- execute-extended-command--shorter 16 2%
- completion-try-completion 16 2%
- completion--nth-completion 16 2%
- completion--some 16 2%
- #<compiled 0x1002489fd> 16 2%
- completion-pcm-try-completion 9 1%
- completion-pcm--find-all-completions 9 1%
completion-pcm--all-completions 9 1%
completion-basic-try-completion 7 1%
- sit-for 1 0%
redisplay 1 0%
- byte-code 5 0%
- read-extended-command 5 0%
- completing-read 5 0%
- completing-read-default 5 0%
read-from-minibuffer 2 0%
- ... 115 20%
Automatic GC 115 20%
I'm not sure what could explain such a huge difference with Linux. I don't have
an easy way right now to run your test on the very same machine with Linux, but
if someone can do it on the same cu, it would be very welcome.
I see 2 potential explanations:
- memory: allocation, or maybe swap (?, depending on your configuration)
- some transcoding of characters (I don't know much about what emacs does in
this area and how it differs between Linux and Windows).
You should try emacs 25.1 beta. The memory allocator has been changed and is
using native win32 memory allocation memory mapped files for buffers. It may be
more efficient.
Regards,
Fabrice
next prev parent reply other threads:[~2016-06-14 7:36 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-13 2:29 How to make 'load' fast in window? tumashu
2016-06-13 5:44 ` Jiege Chen
2016-06-13 13:44 ` Eli Zaretskii
2016-06-13 14:09 ` Fabrice Popineau
2016-06-14 3:25 ` tumashu
2016-06-14 7:36 ` Fabrice Popineau [this message]
2016-06-14 14:46 ` Eli Zaretskii
2016-06-14 20:39 ` Fabrice Popineau
2016-06-15 2:47 ` tumashu
2016-06-15 6:51 ` Fabrice Popineau
2016-06-17 8:48 ` Fabrice Popineau
2016-06-15 14:46 ` Eli Zaretskii
2016-06-15 15:15 ` Fabrice Popineau
2016-06-15 15:40 ` Eli Zaretskii
2016-06-15 15:49 ` Fabrice Popineau
2016-06-15 17:23 ` Eli Zaretskii
2016-06-15 15:30 ` Fabrice Popineau
2016-06-15 22:41 ` Feng Shu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=loom.20160614T092657-361@post.gmane.org \
--to=fabrice.popineau@gmail.com \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.