Eric Abrahamsen <e...@ericabrahamsen.net> writes: > > Cpu report (partly expanded): > > > > 10133 79% - command-execute > > 8519 66% - funcall-interactively > > 4767 37% - gnus-summary-exit > > 4659 36% - gnus-score-save > > 4655 36% - gnus-pp > > 4655 36% - pp > > 4655 36% - pp-to-string > > 4655 36% - pp-fill > > 4647 36% - pp--object > > 4627 36% - pp-fill > > 4615 36% - pp-fill > > 4555 35% - pp-fill > > 4263 33% - pp-fill > > 4243 33% - indent-according-to-mode > > 4243 33% - lisp-indent-line > > 4163 32% - calculate-lisp-indent > > 4163 32% - lisp-indent-function > > 4163 32% lisp--local-defform-body-p > > 48 0% + lisp-ppss > > A few weeks ago Stefan Monnier made a change to lisp-ppss.
Hmm - that report doesn't suggest that this is the culprit. `pp-fill' is also new (this function is used to find good positions for line breaks, which is the most important aspect of Lisp pretty printing). It is the new default behavior of `pp' and maybe slower (in this use case) than the old implementation. Maybe it can also be improved. Anyway, this can be controlled by binding `pp-default-function'. Maybe `gnus-pp' or `gnus-score-save' should bind that variable to a different function? And - is it worth the time to pretty print this data at all? Michael.