unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Andrey Orst <andreyorst@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 46350@debbugs.gnu.org
Subject: bug#46350: 28.0.50; touchpad-scrolling-eats-lots-of-cpu-samples
Date: Sat, 6 Feb 2021 21:34:29 +0300	[thread overview]
Message-ID: <CAAKhXoa80U+R3nDcvBzJxyy_CLRyczMWKUYCTVWxF-skg+om4Q@mail.gmail.com> (raw)
In-Reply-To: <83a6shnklg.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 6697 bytes --]

On Sat, Feb 6, 2021 at 8:59 PM Eli Zaretskii <eliz@gnu.org> wrote:

> I cannot reproduce this.  Did you try "emacs -Q"?

Yes, the behavior I've described happens to me in emacs -Q (and emacs -q)

> Please load mwheel.el (NOT the .elc file!), and then profile the slow
> scrolling again and show a fully-expanded profile.  That might help us
> understand what part of mwheel-scroll takes the lion's share of CPU
> cycles.

Here's whole report expanded (btw can't find if there's expand-all
feature?):

       11593  91% - command-execute
       11549  91%  - funcall-interactively
       11542  91%   - mwheel-scroll
       11536  91%    - let*
       11420  90%     - condition-case
       11381  90%      - unwind-protect
       11377  90%       - let
       11373  90%        - cond
       11372  90%         - condition-case
       10868  86%          - funcall
         324   2%           - scroll-down
         263   2%            - jit-lock-function
         255   2%             - jit-lock-fontify-now
         235   1%              - jit-lock--run-functions
         233   1%               - #<compiled -0x152f649d2893cb7b>
         232   1%                - font-lock-fontify-region
         224   1%                 - font-lock-default-fontify-region
         132   1%                  - font-lock-fontify-syntactically-region
         110   0%                     syntax-ppss
          10   0%                   - lisp-font-lock-syntactic-face-function
           7   0%                    - lisp-string-in-doc-position-p
           1   0%                       forward-sexp
           2   0%                    - lisp-string-after-doc-keyword-p
           2   0%                     - backward-sexp
           2   0%                        forward-sexp
          35   0%                  - font-lock-fontify-keywords-region
          17   0%                   - lisp--el-match-keyword
           2   0%                    - lisp--el-non-funcall-position-p
           1   0%                       syntax-ppss
           5   0%                     #<compiled -0x4e6368f210a40dc>
           1   0%                   - let
           1   0%                    - cond
           1   0%                       eq
           1   0%                     font-lock-prepend-text-property
           1   0%
lisp--match-confusable-symbol-character
           6   0%                    font-lock-unfontify-region
          24   0%            - eval
          18   0%             - if
           3   0%                display-graphic-p
           2   0%             - unless
           1   0%                if
           1   0%               mode-line-eol-desc
         502   3%          - unwind-protect
         502   3%           - funcall
           5   0%            - scroll-down
           4   0%             - eval
           4   0%                if
           4   0%       - if
           2   0%          if
           6   0%      - message
           4   0%       - error-message-string
           3   0%        - substitute-command-keys
           1   0%           #<compiled -0x1fc73df3077c5a73>
           1   0%         clear-minibuffer-message
          57   0%     - if
          50   0%      - progn
          46   0%       - setq
          39   0%        - run-with-timer
          33   0%         - run-at-time
           4   0%          - timer-set-time
           1   0%             timer--time-setter
           1   0%            timer-activate
           3   0%          *
           2   0%         if
           3   0%      - let
           2   0%       - while
           1   0%        - consp
           1   0%         - setq
           1   0%            car-safe
          49   0%     - mouse-wheel--get-scroll-window
          48   0%      - or
          47   0%       - catch
          45   0%        - let*
          44   0%         - if
          39   0%            progn
           4   0%            mwheel-event-window
           1   0%     - delq
           1   0%      - delq
           1   0%         delq
           5   0%   - eval-expression
           5   0%      progn
          42   0%  - byte-code
          29   0%   - read--expression
           2   0%    - redisplay_internal (C function)
           2   0%     - funcall
           2   0%      - #<compiled 0x4f9dac7e18824a>
           2   0%       - gui-backend-selection-exists-p
           2   0%        - apply
           2   0%           #<compiled -0x16887ad6f3ef152d>
           1   0%    - frame-windows-min-size
           1   0%       window-min-size
         976   7% - ...
         976   7%    Automatic GC
          13   0% - timer-event-handler
          13   0%  - apply
          13   0%   - #<subr
F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_11>
          13   0%    - eldoc-print-current-symbol-info
          13   0%     - eldoc--invoke-strategy
          13   0%      - eldoc-documentation-default
          13   0%       - elisp-eldoc-funcall
          13   0%        - elisp--fnsym-in-current-sexp
          13   0%         - elisp--beginning-of-sexp
          13   0%          - forward-sexp
           4   0%           - scan-sexps
           4   0%              syntax-ppss
          11   0% - jit-lock--antiblink-post-command
          11   0%    syntax-ppss
           5   0% - undo-auto--add-boundary
           4   0%  - undo-auto--boundaries
           2   0%     undo-auto--ensure-boundary
           3   0% - mwheel-filter-click-events
           2   0%  - if
           2   0%     eq
           3   0%   internal-timer-start-idle
           3   0%   tooltip-hide
           2   0% - redisplay_internal (C function)
           1   0%  - funcall
           1   0%   - #<compiled 0x4f9dac7e18824a>
           1   0%    - gui-backend-selection-exists-p
           1   0%     - apply
           1   0%        #<compiled -0x16887ad6f3ef152d>
           1   0%  - jit-lock-function
           1   0%   - jit-lock-fontify-now
           1   0%    - jit-lock--run-functions
           1   0%     - #<compiled -0x152f64ab9864c87b>
           1   0%      - font-lock-fontify-region
           1   0%       - font-lock-default-fontify-region
           1   0%        - font-lock-fontify-syntactically-region
           1   0%           syntax-ppss
           2   0% - #<compiled 0x1cf15f5a0be052d1>
           1   0%  - filter-buffer-substring
           1   0%   - buffer-substring--filter
           1   0%    - #<compiled 0x1f88987120b96adb>
           1   0%       apply

Also, I've attached a video of what I'm doing.

 VID_20210206_211819.tar.xz
<https://drive.google.com/file/d/19dsfdY_f30FKRTGJld28wuBcJB0T8LrT/view?usp=drive_web>

-- 
Best regards,
Andrey Listopadov

[-- Attachment #2: Type: text/html, Size: 9461 bytes --]

  reply	other threads:[~2021-02-06 18:34 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-06 17:33 bug#46350: 28.0.50; touchpad-scrolling-eats-lots-of-cpu-samples Andrey Orst
2021-02-06 17:59 ` Eli Zaretskii
2021-02-06 18:34   ` Andrey Orst [this message]
2021-02-06 18:55     ` Andrey Orst
2021-02-06 19:05       ` Eli Zaretskii
2021-02-06 19:02     ` Eli Zaretskii
2021-02-06 19:47       ` Andrey Orst
2021-02-06 20:03         ` Eli Zaretskii
2021-02-07 17:23           ` Andrey Orst
2021-02-07 17:49             ` Eli Zaretskii
2021-02-07 18:33               ` Andrey Orst
2021-02-07 18:44                 ` Eli Zaretskii
2021-02-07 18:52                   ` Andrey Orst
2021-02-07 19:05                     ` Eli Zaretskii
2021-02-07 19:37                       ` Lars Ingebrigtsen
2021-02-07 19:47                         ` Eli Zaretskii
2021-02-07 20:54                           ` Lars Ingebrigtsen
2021-02-07 22:16                     ` Alan Third
2021-02-07 22:22                       ` Andrey Orst
2021-02-07 22:24                         ` Alan Third
2021-02-07 22:30                           ` Andrey Orst
2021-02-08 10:12                             ` Andrey Orst
2021-02-08 14:35                               ` Andrey Orst
2021-02-08 15:28                                 ` Eli Zaretskii
2021-02-08 15:31                                   ` Andrey Orst
2021-02-08 15:19                               ` Eli Zaretskii

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAAKhXoa80U+R3nDcvBzJxyy_CLRyczMWKUYCTVWxF-skg+om4Q@mail.gmail.com \
    --to=andreyorst@gmail.com \
    --cc=46350@debbugs.gnu.org \
    --cc=eliz@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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.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).