Found this with quantify a while back. On X, this is a painful thing to do, because it involves extra roundtrips to the X server.
Target Milestone: M15
Target Milestone: M15 → M16
moving this to m17 since this is perf work
Target Milestone: M16 → M17
moving to m19
Target Milestone: M18 → M19
I suspect that nsbeta3 falling out of the keywords was an accident, not intentional, given the accompanying comment. Putting it back.
setting to nsbeta3-, performance issues will be addressed after correctness and polish bugs are resolved NOTE: performance issues will be addressed at the end of nsbeta3 and well after nsbeta3, therefore I wish to remove the nsbeta3 keyword
Given that customers will tend to use an unpolished but performant product, but not a slow but polished product, making performance last priority seems folly, since it could then fall off the end of the schedule. Anyway, nsbeta3 has long been touted as the performance beta. When did this change?
marking nsbeta3-: performance bugs will be an on-going task and will continue to be addressed during and well after nsbeta3
I've tried to keep an RC around, and reuse it if the view being used to draw the caret does not change, but this invariably results in the caret drawing in the wrong place, or other messed up drawing. So I'm looking for help on this. Any patches need to be tested thoroughly on all 3 platforms, because caret drawing is sensitive to the details of how drawing happens.
Status: NEW → ASSIGNED
moving to future per review with bij and beppe
Target Milestone: M19 → Future
Cc'ing myself. Anyone working on this?
The report at http://www.mozilla.org/performance/mallocsites20011031.html (see bug 67618 for more info) shows that 340 rendering contexts are created at startup because of nsCaret::DrawCaret(). There might be something to investigate here.
Actually when I generated that report, I left the browser window up for a while (caret blinking in the URL bar), so most of those allocations are probably not 'startup' per se.
This should be fixed for 1.4a.
Using the 'Resources' extension to XFree4.3 I checked and saw that this does not in fact happen. A lot of contexts are being leaked, but not due to blinking the caret. /if/ the GCs column shows graphic contexts that is.. http://www.freedesktop.org/Software/xrestop for the tool.
Please Note: bug 241507 removed #define DONT_REUSE_RENDERING_CONTEXT for unix platforms, however that caused the crash noted in bug 254049, and so it is now being changed to just be removed for non-gtk2 builds.
You need to log in before you can comment on or make changes to this bug.