André Pönitz wrote:
> LyX is the _only_ application I know that e.g. still pretends to be able
> to draw outside of paint events by adding another level of buffering
> (GuiWorkArea::Private::screen_). And note, that's not a "problem
> originating from Qt", but imposed by some platforms, most notably
> MacOS_X_.  This approach causes otherwise completely unnessary copies of
> all screen data when scrolling.
> 
> Also, the core text drawing functionality is "abstracted", i.e. LyX does
> it (deteminining positioning, spacing etc), spoon-feeds the results to
> Qt's drawText() which does the same again. Similar for the handling of
> fonts, colors etc.
> 
> I just stepped a bit through the code and there were tons of instances
> where single characters were passed to drawText, each setting up the
> text drawing machinery mostly from scratch. I do understand that this
> might be needed for math, but it should not happen often for regular
> test.

my point was that its not clear at all whether all this is culprit of the
problems. on contrary i have seen many reports which cast doubt on different
layers of the system.

when people report 90% of cpu time taken by X how much of total time
is taken from lyx by internal computations?

right now i'm siting on my home system which by top shows 80 (X) :17 (lyx)
when holding down arrow. typing is so-so, scrolling is pain but one get used
to it after some time.

launching sysprof leads to 72:16, main eaters all lead to various radeon
routines in kernel (at least 45). (195.113.26.193/~sanda/prof.tgz)

there were more reports like this, and i have already sent more profiles with
similar findings. sure, one can't rule out the possibility that we abuse qt
somehow but it doesn't look like that. when i run ooffice (or firefox etc)
and scroll no such problems, so the drivers are not always bottleneck.

pavel

Reply via email to