Re: slow `B m' due to a require for each of gnus-active-hashtb
Kevin Brubeck Unhammerwrites: > On Gnus v5.13, Emacs 24.5.1, doing `B m` takes quite a long time (10s > and up) before it shows any prompt (but seemingly only after I've been > using Emacs for a while). If I toggle-debug-on-quit and poormansprofile > it a bit, the backtraces always look like this: > > Debugger entered--Lisp error: (quit) > require(nntp) > gnus-get-function((nntp "news.gwene.org") request-accept-article t) > gnus-valid-move-group-p(nntp+news\.gwene\.org:gwene\.net\.patdavid\.gimp) [...] > It's a lot faster if I simply comment out (require (car method)) from > gnus-get-function (the require seems to still be there in git). If > that's not safe (how many backend methods are there?), then perhaps > there could be an alternate active group storage that organises active > groups hierarchically, so it would be possible to go from > valid-move-group to a set of groups? Hm... it's odd that require should be the bottleneck here, because it's a NOOP if the feature has already been loaded. (benchmark-run 10 (require 'nntp)) takes 0.1s on my machine. How many groups do you have? :-) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ___ info-gnus-english mailing list info-gnus-english@gnu.org https://lists.gnu.org/mailman/listinfo/info-gnus-english
Re: slow `B m' due to a require for each of gnus-active-hashtb
Kevin Brubeck Unhammerwrites: > Hi, > > On Gnus v5.13, Emacs 24.5.1, doing `B m` takes quite a long time (10s > and up) before it shows any prompt (but seemingly only after I've been > using Emacs for a while). If I toggle-debug-on-quit and poormansprofile > it a bit, the backtraces always look like this: > > Debugger entered--Lisp error: (quit) > require(nntp) > gnus-get-function((nntp "news.gwene.org") request-accept-article t) > gnus-valid-move-group-p(nntp+news\.gwene\.org:gwene\.net\.patdavid\.gimp) > #[(symbol) " !\205 \nB\211\207" [predicate symbol out] > 2](nntp+news\.gwene\.org:gwene\.net\.patdavid\.gimp) > mapatoms(#[(symbol) " !\205 \nB\211\207" [predicate symbol out] > 2] > [nntp+news\.gmane\.org:gmane\.comp\.storage\.spectrum-scale\.gpfs\.user > ...]) > gnus-remove-if-not(gnus-valid-move-group-p > [nntp+news\.gmane\.org:gmane\.comp\.storage\.spectrum-scale\.gpfs\.user > ...] t) > gnus-read-move-group-name("Move" "nnimap+fmmbsync:Junk Mail" (397) > "nnimap+trigram:") > gnus-summary-move-article(nil) > call-interactively(gnus-summary-move-article nil nil) > command-execute(gnus-summary-move-article) > > It's a lot faster if I simply comment out (require (car method)) from > gnus-get-function (the require seems to still be there in git). If > that's not safe (how many backend methods are there?), then perhaps > there could be an alternate active group storage that organises active > groups hierarchically, so it would be possible to go from > valid-move-group to a set of groups? I ___ info-gnus-english mailing list info-gnus-english@gnu.org https://lists.gnu.org/mailman/listinfo/info-gnus-english
slow `B m' due to a require for each of gnus-active-hashtb
Hi, On Gnus v5.13, Emacs 24.5.1, doing `B m` takes quite a long time (10s and up) before it shows any prompt (but seemingly only after I've been using Emacs for a while). If I toggle-debug-on-quit and poormansprofile it a bit, the backtraces always look like this: Debugger entered--Lisp error: (quit) require(nntp) gnus-get-function((nntp "news.gwene.org") request-accept-article t) gnus-valid-move-group-p(nntp+news\.gwene\.org:gwene\.net\.patdavid\.gimp) #[(symbol) " !\205 \nB\211\207" [predicate symbol out] 2](nntp+news\.gwene\.org:gwene\.net\.patdavid\.gimp) mapatoms(#[(symbol) "!\205 \nB\211\207" [predicate symbol out] 2] [nntp+news\.gmane\.org:gmane\.comp\.storage\.spectrum-scale\.gpfs\.user ...]) gnus-remove-if-not(gnus-valid-move-group-p [nntp+news\.gmane\.org:gmane\.comp\.storage\.spectrum-scale\.gpfs\.user ...] t) gnus-read-move-group-name("Move" "nnimap+fmmbsync:Junk Mail" (397) "nnimap+trigram:") gnus-summary-move-article(nil) call-interactively(gnus-summary-move-article nil nil) command-execute(gnus-summary-move-article) It's a lot faster if I simply comment out (require (car method)) from gnus-get-function (the require seems to still be there in git). If that's not safe (how many backend methods are there?), then perhaps there could be an alternate active group storage that organises active groups hierarchically, so it would be possible to go from valid-move-group to a set of groups? -- Kevin Brubeck Unhammer signature.asc Description: PGP signature ___ info-gnus-english mailing list info-gnus-english@gnu.org https://lists.gnu.org/mailman/listinfo/info-gnus-english