[Konsole-devel] [Bug 83890] Scrolling extremely slow when the windows contains broken lines
gsasha at cs.technion.ac.il
gsasha at cs.technion.ac.il
Fri Sep 30 17:10:41 UTC 2005
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=83890
------- Additional Comments From gsasha cs technion ac il 2005-09-30 19:10 -------
>Could you try KDE 3.5? I also would be interested in hearing if turning off the History helps/fixes these issues.
>
>
>
Sorry, can't try KDE 3.5 for now - I work on this comp... maybe when the
RC is out.
Anyway, I wrote a mini-benchmark. It uses the following code in Python:
--------------------
import sys
import string
iters = int(sys.argv[1])
width = int(sys.argv[2])
s = (string.hexdigits * width) + "\n"
ss = s * (iters/width)
print ss
--------------------
Note that the benchmarks does the printing with a single command,
therefore, there should be no problems with buffering between the python
process and the console itself.
Here are the results for different parameters (In all the results I show
the elapsed time).
The first parameter is just the size of the benchmark, and the second
one determines the width of the printed text (so I run it with something
like "time python wideprint.py 1000000 1000").
All the runs above were executed with iters=1000000, and varying width.
The time reported is the value printed by defining "export
TIMEFORMAT='%R'" in bash.
Width Output_to_/dev/null Konsole Konsole(no_history) xterm
1 0.179 31.556 30.117 148.428 # no
wrapping
10 0.202 57.264 47.527 37.985 #
wrapping into ~2 lines
100 0.306 94.222 86.642 37.240 #
wrapping into ~10 lines
1000 0.144 81.101 88.994 37.667 #
wrapping into ~100 lines
10000 0.307 69.729 80.660 37.017 #
heavy wrapping
100000 0.127 75.450 77.561 37.360 #
extremely heavy wrapping
What the benchmark shows:
1. A good portion of the 30 seconds is the text rendering time proper,
as taken by X server.
2. xterm is stupid when printing many short lines, and konsole is GOOD.
3. konsole behaves badly when wrapping starts to happen, and the badness
increases with the amount of wrapping.
4. History has almost no effect on the konsole's performance.
In addition, the Xterm version *appears* to go fast, i.e., it is
redrawing the contents of the terminal very quickly. On the other hand,
the konsole is redrawing very slowly, and pauses for ~0.5 seconds (gc?)
every couple of seconds.
I watched top during the benchmark, and the interesting thing is, it is
the X server taking the time when the konsole slows down due to
wrapping, implying that it's konsole's rendering code that behaves badly
in this case, and not the wrapping logic per se.
Created an attachment (id=12791)
--> (http://bugs.kde.org/attachment.cgi?id=12791&action=view)
gsasha-1.vcf
More information about the konsole-devel
mailing list