emacs-devel
[Top][All Lists]
Advanced

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

Re: Low redisplay performance (23 regression)


From: Tobias C. Rittweiler
Subject: Re: Low redisplay performance (23 regression)
Date: Thu, 30 Apr 2009 09:53:09 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/23.0.60 (gnu/linux)

Chong Yidong <address@hidden> writes:

> Tassilo Horn <address@hidden> writes:
>
>> And on yet another related note, today I've found out that after
>> changing the font scale for the current buffer using `C-x C-+' or `C-x
>> C--' line-by-line scrolling slows down considerably.
>
> On further investigation, I found that the problem can be solved with a
> relatively safe change to handle_face_prop, so that it tells
> face_at_buffer_position what the base face id is rather than having
> face_at_buffer_position recalculate it each time the redisplay loop
> wants to display the next face (!).  I've checked in the fix.

This does also effect my case positively. See PS for profiling
data. (The profiling data I sent a short moment ago in a reply to SM was
made with the same Emacs built as from yesterday.)

Your change chops off 1 second of elapsed time. Notice that I do _not_
use face-remapping. (At least I think so, `face-remapping-alist' is
nil.)

It's still slower than 22.x, though.

  -T.


PS.

GNU Emacs 23.0.92.2 (i686-pc-linux-gnu, GTK+ Version 2.12.9) of 2009-04-30

jit-lock-function                                          478         
8.0091170000  0.0167554748
jit-lock-fontify-now                                       478         8.004965 
     0.0167467887
font-lock-fontify-region                                   478         
7.9449999999  0.0166213389
font-lock-default-fontify-region                           478         
7.9367379999  0.0166040543
font-lock-fontify-keywords-region                          478         
4.0301240000  0.0084312217
slime-extend-region-for-font-lock                          953         
3.2400959999  0.0033998908
slime-region-for-tlf-at-point                              922         
2.3287470000  0.0025257559
end-of-defun                                               1844        
2.0637190000  0.0011191534
slime-search-suppressed-forms                              922         
1.5182759999  0.0016467201
slime-region-for-extended-tlf-at-point                     461         
1.3538770000  0.0029368264
font-lock-fontify-syntactically-region                     478         0.60468  
     0.0012650209
beginning-of-defun-raw                                     4226        
0.4219760000  9.985...e-05
beginning-of-defun                                         2380        
0.3595919999  0.0001510890
slime-forward-sexp                                         220         
0.1066330000  0.0004846954
slime-forward-cruft                                        220         
0.1030679999  0.0004684909
slime-eval-feature-conditional                             444         
0.0904689999  0.0002037590
slime-lisp-features                                        444         
0.0818809999  0.0001844166
slime-forward-any-comment                                  220         
0.0401569999  0.0001825318
slime-forward-reader-conditional                           220         
0.0384359999  0.0001747090
font-lock-unfontify-region                                 478         
0.0243780000  5.100...e-05
slime-forward-blanks                                       220         
0.0204380000  9.290...e-05
font-lock-default-unfontify-region                         478         
0.0180999999  3.786...e-05
slime-connection                                           444         
0.0064210000  1.446...e-05
slime-pre-command-hook                                     112         
0.0047230000  4.216...e-05
font-lock-extend-region-multiline                          953         
0.0034039999  3.571...e-06
font-lock-extend-region-wholelines                         953         
0.0031459999  3.301...e-06
slime-keywordify                                           444         
0.0029510000  6.646...e-06
jit-lock-context-fontify                                   15          0.00256  
     0.0001706666
slime-connected-p                                          922         
0.0023539999  2.553...e-06
font-lock-set-defaults                                     484         
0.0015360000  3.173...e-06
slime-current-connection                                   444         
0.0009280000  2.090...e-06
font-lock-mode                                             14          
0.0008950000  6.392...e-05
slime-post-command-hook                                    112         
0.0006179999  5.517...e-06
font-lock-default-function                                 14          0.000572 
     4.085...e-05
font-lock-mode-internal                                    2           0.000443 
     0.0002215
font-lock-compile-keywords                                 2           0.000187 
     9.35e-05
font-lock-turn-on-thing-lock                               2           
0.0001599999  7.999...e-05
jit-lock-register                                          2           0.000102 
     5.1e-05
slime-lisp-mode-hook                                       1           8e-05    
     8e-05
jit-lock-mode                                              2           
7.400...e-05  3.700...e-05
slime-mode                                                 1           7.1e-05  
     7.1e-05
font-lock-compile-keyword                                  32          6.6e-05  
     2.0625e-06
font-lock-add-keywords                                     2           
4.499...e-05  2.249...e-05
slime-setup-command-hooks                                  1           4e-05    
     4e-05
jit-lock-refontify                                         2           
3.999...e-05  1.999...e-05
slime-add-local-hook                                       2           
2.600...e-05  1.300...e-05
font-lock-change-mode                                      1           2.6e-05  
     2.6e-05
font-lock-remove-keywords                                  2           2.2e-05  
     1.1e-05
font-lock-value-in-major-mode                              5           1.1e-05  
     2.2e-06
font-lock-eval-keywords                                    2           8e-06    
     4e-06
slime-setup-first-change-hook                              1           6e-06    
     6e-06
font-lock-choose-keywords                                  1           4e-06    
     4e-06
slime-add-easy-menu                                        1           3e-06    
     3e-06





reply via email to

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