[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.e
From: |
Dmitry Gutov |
Subject: |
bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el |
Date: |
Sat, 6 Mar 2021 16:26:29 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
On 06.03.2021 14:54, Gregory Heytings wrote:
Also: grepping for that kind of regexp is noticeably slower than
grepping for 'file'. Or even '.file'. Like 85ms vs 7ms slower.
Well, the bug report mentioned delays of 3-4 seconds on files with very
long lines, so I'd guess that 85 ms is a pretty reasonable speed...
We do want fast searches to remain fast, too.
I got that 85ms timing when searching just one file. A project can often
contain thousands of files.
In my further testing, the difference is not as stark because of other
Elisp overhead on file listing, serialization/deserialization/process
calls/parsing output, but even with all that in my work project the
difference between such searches can be 0.27s vs 0.43s.
With further optimizations of project file listing logic, the difference
can become even more pronounced (project-files in the same project takes
0.14s).
You can benchmark it yourself with this form:
(benchmark 1 '(project-find-regexp ".\\{0,100\\}file.\\{0,100\\}"))
vs
(benchmark 1 '(project-find-regexp "file"))
(I get 9s vs 7s in the same project for this particular search).
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, (continued)
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Eli Zaretskii, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Eli Zaretskii, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Eli Zaretskii, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Eli Zaretskii, 2021/03/04
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el,
Dmitry Gutov <=
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/07
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/07
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/08
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/08
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Gregory Heytings, 2021/03/06
- bug#46859: 28.0.50; [PATCH]: Add option to truncate long lines in xref.el, Dmitry Gutov, 2021/03/06