outline pane issues and huge note slowness

Jean-Marc Lasgouttes lasgouttes at lyx.org
Wed Dec 8 18:43:16 UTC 2021


Hi Valdemaras,

I move this discussion to lyx-devel since you are there too. We have 
used the bandwidth of this list long enough with technical issues.

Le 07/12/2021 à 03:19, sovhist a écrit :
> Well, I don't see much difference with and without spellcheck. All
> "words" are with misspelling marks, so this could be a problem, but no.
> I remember, that earlier, maybe a year or two ago there were lags with
> text in Lithuanian bigger than in English. But now I can't see bigger
> differences.

OK

> It is much harder to see lag differences with breakrows branch because
> you did very good work with large insets :). For me it's not 40% gain,
> but maybe four times better than without it.


Good. FWIW, the patch is in master now :)

>> In flame_1, I do not see much, except maybe the fact that a lot of
>> time
>> is spent accessing the cache (the part with QCache and QHash) of
>> already
>> computing rows. This can be good (already is already computed) or bad
>> (the cache access are very slow), depending on the importance of this
>> part of code in the whole picture.
>>
> 
> My computer uses ssd (nvme), so cache access shouldn't be a problem
> though I'm not shure about that.

The cache is in memory, but building the key to access it might be 
expensive.

>> In full.svg, I do not see the time spent painting the screen (what is
>> in
>> flame_2), so I cannot compare it to the time spend computing the
>> position of each element (basically the redoParagraph stuff). It would
>> be good to understand what is too slow.
>>
> 
> On which part of full.svg should I click that you could see what you need?

Basically, I am surprised that I do not see a part of the work (either 
typesetting or drawing or something else) take a huge amount of time. 
This is what bothers me is that I cannot read this information from the 
flames. What is LyX doing that takes so much time?

> I opened usual file in Lyx with little insets, and scrolled up and down,
> Htop shows CPU usage about 40% of one core (and it spikes to 80-99% when
> text in Russian that is marked with spellcheck appears on screen). CPU
> instantly spikes to 96-98% while scrolling hugenote file with spellcheck
> marks. I see 86-96% whithout them. That is both in Lithuanian and
> Egglish, maybe there is some more CPU usage in Lithuanian (I see more
> 100% with that language than with English, but that could be because
> different speed of scroll).

So it seems it is really LyX (or Qt)

> One more thing: I see three instances of lyx process in Htop, but only
> one reacts to scrolling, two other sits calmly and shows 0% of CPU
> usage. And I see that Lyx uses only one core, not four, only one core
> spikes. Is that normal?

Unfortunately, LyX is not able to use several cores for this kind of 
work. I am not sure there ismuch to gain here. It does use other 
processes for running LaTeX, though (so that editing is not blocked 
while typesetting).

I will try to prepare a small patch so that you can run with our 
internal profiler and we can get numbers.

JMarc

PS: every time you post to lyx-users, I get ~40 bounces from all our 
subscribers that use yahoo mail, because of some spam issues. Do you 
have an idea of why this would be? You are quite special in this respect ;)



More information about the lyx-devel mailing list