Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

slowness in stress test #261

Closed
dabrahams opened this Issue · 2 comments

3 participants

@dabrahams

When performing a rewrite (of probably 10K commits) with `r b' I get into a state where magit is unbearably slow to do just about anything. elp profiling results follow, for what it's worth. Consider this a stress test; should you not find any low-hanging fruit here I suggest closing the ticket and moving on.

magit-wash-sequence                             372         79.129814     0.2127145537
magit-refresh                                   1           47.209205     47.209205
magit-refresh-wrapper                           1           47.209196     47.209196
magit-refresh-buffer                            1           47.197942     47.197942
magit-refresh-status                            1           47.190833     47.190833
magit-git-section                               7           40.136078999  5.7337255714
magit-insert-section                            7           40.134968     5.7335668571
magit-insert-pending-changes                    1           40.037881     40.037881
magit-wash-diffs                                1           39.705714     39.705714
magit-wash-diff-or-other-file                   365         39.705059999  0.1087809863
magit-wash-diff                                 365         39.704267     0.1087788136
magit-wash-diff-section                         365         39.646922999  0.1086217068
magit-wash-hunk                                 755         39.406265999  0.0521937298
magit-put-line-property                         101032      12.920146000  0.0001278817
magit-insert-pending-commits                    1           6.661799      6.661799
magit-cmd-output                                714         5.9179279999  0.0082884145
magit-git-string                                707         5.8195089999  0.0082312715
magit-git-output                                707         5.7710320000  0.0081627043
magit-highlight-line-whitespace                 101032      0.4918209999  4.867...e-06
magit-cmd-insert                                7           0.4034520000  0.0576360000
magit-propertize-section                        1498        0.3277000000  0.0002187583
magit-find-section                              4772        0.2068610000  4.334...e-05
magit-new-section                               1500        0.1800500000  0.0001200333
magit-insert-diff-title                         366         0.1454640000  0.0003974426
magit-section-set-hidden                        23          0.1096420000  0.0047670434
magit-current-line                              365         0.0398850000  0.0001092739
magit-section-path                              4775        0.0305350000  6.394...e-06
magit-get                                       4           0.0296250000  0.0074062500
magit-insert-stashes                            1           0.029336      0.029336
magit-insert-untracked-files                    1           0.027216      0.027216
magit-get-top-dir                               3           0.026896      0.0089653333
magit-find-buffer                               2           0.01957       0.009785
magit-insert-unpushed-commits                   1           0.0177359999  0.0177359999
magit--bisect-info-for-status                   1           0.01616       0.01616
magit--bisect-info                              1           0.016141      0.016141
magit-insert-unstaged-changes                   1           0.013342      0.013342
magit-insert-unpulled-commits                   1           0.011514      0.011514
magit-insert-staged-changes                     1           0.009726      0.009726
magit-for-all-sections                          1498        0.0091930000  6.136...e-06
magit-find-status-buffer                        1           0.008579      0.008579
magit-get-current-branch                        1           0.008287      0.008287
magit-get-ref                                   1           0.008258      0.008258
magit--bisecting-p                              1           0.007534      0.007534
magit-wash-log                                  2           0.0073339999  0.0036669999
magit-git-exit-code                             2           0.007275      0.0036375
magit-wash-log-line                             21          0.0072739999  0.0003463809
magit-remote-string                             1           0.007084      0.007084
magit-wash-untracked-files                      1           0.006998      0.006998
magit-wash-untracked-file                       13          0.0069570000  0.0005351538
magit-remote-branch-for                         1           0.006532      0.006532
magit-anything-staged-p                         1           0.004769      0.004769
magit-refresh-marked-commits-in-buffer          1           0.003508      0.003508
magit-set-section-info                          1100        0.0034120000  3.101...e-06
magit-read-rewrite-info                         2           0.002448      0.001224
magit-diff-line-file                            365         0.0022369999  6.128...e-06
magit-trim-line                                 707         0.0020910000  2.957...e-06
magit-cancel-section                            2           0.001286      0.000643
magit-wash-raw-diffs                            2           0.00108       0.00054
magit-wash-raw-diff                             3           0.0010500000  0.0003500000
magit-wash-stashes                              1           0.000809      0.000809
magit-wash-stash                                2           0.000791      0.0003955
magit-present-log-line                          21          0.0003580000  1.704...e-05
magit-revert-buffers                            1           0.000211      0.000211
magit-remote-branch-name                        2           4.4e-05       2.2e-05
magit-post-command-hook                         3           4.3e-05       1.433...e-05
magit-current-section                           6           3.3e-05       5.500...e-06
magit-rebase-info                               1           3.2e-05       3.2e-05
magit-file-lines                                1           2.8e-05       2.8e-05
magit-highlight-section                         4           2.7e-05       6.75e-06
magit-string-has-prefix-p                       4           8e-06         2e-06
magit-remember-point                            3           7e-06         2.333...e-06
magit-correct-point-after-command               3           7e-06         2.333...e-06
magit-diff-U-arg                                1           6e-06         6e-06
magit-find-section-at                           6           5.999...e-06  1e-06
magit-need-refresh                              1           1e-06         1e-06
magit-set-section-needs-refresh-on-show         1           1e-06         1e-06
@sigma sigma was assigned
@tarsius
Owner

When performing a rewrite (of probably 10K commits)

I would do that on the command line.

Consider this a stress test; should you not find any low-hanging fruit here I suggest closing the ticket and moving on.

Done.

@tarsius tarsius closed this
@tarsius tarsius added 11 misc and removed 11 core labels
@tarsius tarsius removed the . label
@tarsius
Owner

On the next branch washing diffs is now much faster.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.