emacs-devel
[Top][All Lists]
Advanced

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

Re: Tooltips GC overhead


From: martin rudalics
Subject: Re: Tooltips GC overhead
Date: Thu, 30 Jul 2015 11:05:47 +0200

>> I suppose you didn't wait until the tooltips really showed up.
>
> No, I waited.

This is hopeless.  Evaluating

(let ((c cons-cells-consed)
      (v vector-cells-consed))
  (tooltip-show "foobar")
  (message "cons: %s vector: %s"
           (- cons-cells-consed c)
           (- vector-cells-consed v)))

gives here "cons: 58696 vector: 9443".  Evaluating

(let ((c cons-cells-consed)
      (v vector-cells-consed))
  (x-show-tip "foobar")
  (message "cons: %s vector: %s"
           (- cons-cells-consed c)
           (- vector-cells-consed v)))

gets me "cons: 58649 vector: 9443", so the remainder of `tooltip-show'
is responsible for just 47 additional conses.  We can ignore that.

I suppose most of the overhead goes to x_create_tip_frame - a normal
`make-frame' here gets me "cons: 37464 vector: 33018".  Calculating the
tooltip position doesn't seem to add much overhead.  So the only way to
fix this is to hide tooltip frames instead of deleting and re-creating
them.  If this can be done properly.

And - ceterum censeo - the profiler should be fixed.  In its current
form it's more confusing than enlightening.

martin




reply via email to

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