Jean-Marc Lasgouttes wrote:
> Le 11/01/2016 10:59, Pavel Sanda a écrit :
>> Jean-Marc Lasgouttes wrote:
>>> I reproduce the svg you sent for 2.2, since it is not so large either :)
>>
>> More important is - can you reproduce the behaviour? It's pretty clear on my
>> machine without trying any special conditions, just high repeat rate of the
>> keyboard is needed.
>
> I tried to play with different profilers at the time.

Sorry, by reproducing I meant just seeing the problem visually without
really trying any profiling stuff. I'm just fearing I observe my graphic
card issue, it wouldn't be the first time...

> * I cannot get sysprof to give nice trees anymore. Are you on a 64bit 
> target? It seems to me that life was simpler when I was in 32 bits linux.

That was 32 bit. For trees you need to save file and then run:
gprof2dot  -f sysprof saved_file |dot -Tsvg -o sysprof.svg

Any better now?

> * I tried perf, but I am not sure what to do with it. Again, I do not get 
> nice trees.

IIRC I needed to compile with --enable-build-type=gprof, gmon.out is created
while running lyx, then you need to run
gprof src/lyx gmon.out > gprof.txt

For visualizing trees:
gprof2dot gmon.out |dot -Tsvg -o full.svg

I think sysprof is better choice because gprof will hide calls to 3rd
party libs which matter.

Not so long ago Guilliame added Callgrind section into wiki. I didn't
have time to try it but it look really cool on screenshots, you might
want to try that.

> At some time, I convinced my self that there is as much time spent in 
> toolbar updates than in painting itself. The reason is (would be) that it 
> uses BufferParams::isExportable which does a full graph search in 
> converters for each icon that we might want to enable.

I was quite surprised how much took macro updates, but I think it's both
cases, thus not culprit of our problem.

> I did not spend more time to investigate this, especially since we are 
> moving office to Paris center next Thursday.

>>> * is this a 2.2 built in release mode?
>>
>> 2.2 was build with O2 & enabled debug symbols, 2.0 was release mode (i.e.
>> including O2) but the completely stripped off the symbols after 
>> compilation.
>
> Yes, but did you use --disable-stdlib-debug? This slows down LyX quite a 
> bit. Using --enable_build-type=prof is nice because it uses the right flags 
> for profiling.

disable-stdlib-debug should have been off for both cases.

Pavel

Reply via email to