Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: Heads-up: KDEers: Particularly kde3-ers,
Date: Thu, 27 Aug 2009 06:08:09
Message-Id: pan.2009.08.27.11.15.38@cox.net
In Reply to: Re: [gentoo-amd64] Re: Heads-up: KDEers: Particularly kde3-ers, by Volker Armin Hemmann
1 Volker Armin Hemmann posted on Wed, 26 Aug 2009 18:13:51 +0200 as
2 excerpted:
3
4 > On Mittwoch 26 August 2009, Duncan wrote:
5 > By 4.2.4 (and I think for 4.2.0, maybe even
6 >> 4.1.something), kde had fixed that. It now tries to detect if OpenGL
7 >> will work before setting it, and normally won't let you set it if it
8 >> thinks it won't work. You can override it, but in ordered to do so you
9 >> have to click thru several warnings, and anybody doing that should be
10 >> prepared to live with the consequences. One bug down, and a very bad
11 >> one at that, so good work, kde.
12 >>
13 >>
14 > no, it tries if composite works with the pre-selected composite type
15 > (either ogl or xrender).
16 >
17 > And to turn off this test you only have to unselect one checkbox -
18 > without warnings. In fact, without that check composite works fine for
19 > me, while with the check my box loves to lock up with some driver
20 > versions.
21 >
22 > xrender on the other hand is just utterly broken beyond help.
23
24 I wasn't aware of it checking composite (they dramatically improved that
25 in 4.3.0 and I'm still discovering bits of it I didn't know about from my
26 initial setup on 4.2.4), but it also checks OpenGL support, and that's
27 what the warnings are on if you don't have it.
28
29 It seems you don't have an issue with OpenGL support, however, so you'd
30 never see the warnings. It would appear that just as I wasn't aware of
31 some of the new composite stuff since that works just fine here, you
32 weren't aware of the OpenGL stuff since that works just fine for you.
33
34 >> The one I had learned around, that still exists, is that while kde now
35 >> detects OpenGL compatibility and won't let you switch to it without
36 >> warnings if it thinks it won't work, on the all-effects tab (of the
37 >> desktop effects settings applet), there's still no indication of what
38 >> effects simply do nothing in xrender/composite-only mode.
39 >
40 > except there is a warning popup when you enable composite telling you
41 > exactly which stuff does not work. Like explosion.
42
43 That popup appears whenever the mode changes, it would seem. Composite
44 toggle, it appears. OpenGL/Xrender toggle, it appears as well.
45
46 Of course, on a system with everything working, it wouldn't appear except
47 when switching out of OpenGL mode, if any OpenGL-only effects (like the
48 mouse locater) are enabled.
49
50 But that doesn't cure the problem I'm talking about, which is that in
51 Xrender/composite-only mode (no OpenGL), it should dim out the effects
52 that require OpenGL.
53
54 For that matter, if composite doesn't work (or when it's disabled), it
55 should dim out the effects requiring composite, too. I think all the
56 effects require one or the other, in which case with both disabled, the
57 whole tab could be either disabled or removed.
58
59 >> One thus has
60 >> to trial-and-error enable and test anything that looks interesting one
61 >> by one, and if it does nothing, preferably disable it again. If they
62 >> won't work anyway in xrender/composite-only mode, they should be
63 >> disabled in that mode, so only the effects that actually work are
64 >> available to select and try.
65 >
66 > even better, per default only effects that work on the vast majority of
67 > systems are activated. If you are turning on the rest and they don't
68 > work you get a nice warning message after clicking the 'apply' button.
69 > You then can unselect them - or don't care because they are not used
70 > anymore.
71
72 Except I don't get that "nice warning". With OpenGL off, Explode, the
73 Cube, Track Mouse, Snow, Cover-switch, and perhaps others, silently allow
74 enabling, no warning, they simply do nothing. They should be dimmed out
75 and not even available to be chosen, as they require OpenGL which isn't
76 on.
77
78 >> Since most don't work without OpenGL, showing them as available to try
79 >> and then having them do nothing when people do just that, is confusing
80 >> at best. Dim them out and don't let people select them in that case,
81 >> and usability on that tab for Composite-only users would go up several
82 >> hundred percent.
83 >
84 > confusing?
85 > 'Following effects could not be enabled: Explosion'
86
87 Except that only pops up when the mode is switched, not when specific
88 items are enabled and/or when one hits apply.
89
90 > right after the test.
91 > You can still enable them, in case the next driver update fixes that,
92 > the one you are installing in five minutes or ignore them, because they
93 > do no harm deactivated.
94 >
95 > What is not nice about it? Non working stuff is just ignored - and told
96 > so. If you choose to ignore the warnings - well, that is YOUR choice.
97
98 Except as I've said, there are no warnings for effect toggles, only when
99 the composite/opengl/xrender the mode is switched.
100
101 > KDE is about choice, you know?
102
103 Indeed. Something we agree on! =:^)
104
105 > or you are using hardware that is way, way tooo slow. Or you are hit by
106 > the backfill patch fallout. Or you are using hardware that was never
107 > meant for this kind of stuff.
108
109 This part is purely a settings thing, no more, no less. If people are
110 having trouble with performance, these settings should help, as they did
111 me. I was simply passing them on for others who may find them helpful.
112 No more, no less.
113
114 >> The simple thing is to simply set that to instant, 0 ms. However,
115 >> typing a specific value in the textbox also works, and I discovered
116 >> that anything up to about 20ms was fine. But of course using the
117 >> spinner, the resolution means 0 or 100ms, unless you type it in.
118 >
119 > and you can type it in. Isn't that userfriendly?
120
121 ?? I wasn't saying it wasn't userfriendly. All I'm saying is that the
122 spinner increment is too high -- don't use it when setting this, if
123 you're doing it in ordered to increase performance, anyway. Just type it
124 in. So I've no idea where you're comment is coming from. It makes no
125 sense in context.
126
127 >> What could be the problem now? Turn off transparency just to check,
128 >> sure enough the problem went away. But it couldn't be /just/ that, as
129 >> that's a kwin v4 thing, and I had it running fine on kde3. So the
130 >> problem now had to be the kde4 desktop itself, or rather, how it
131 >> interacted with kwin.
132 >
133 > no. You are wrong here. kwin3 does not have 'real' transparency. Hust
134 > fake one. Fake one is pretty fast even on utterly broken hardware. Real
135 > transparency is used by kwin4. And that needs at least sane drivers and
136 > not hardware from yesrermillenium. You are comparing apples to oranges
137 > here.
138
139 Yes, kwin3 *DID* have real transparency, working with xorg composite,
140 which provided the functionality. Without composite, it didn't work, so
141 yes, it /was/ real xorg based composite transparency.
142
143 In that regard, kwin4 uses exactly the same composite functionality that
144 kwin3 used.
145
146 What I believe you're referring to is the "fake" transparency certain
147 kde3 apps (kicker and konsole, at least) used well before xorg composite
148 even appeared. Not only were they doing it earlier, so it couldn't
149 /possibly/ have used xorg's composite, but unlike the xorg composite
150 based transparency of kwin3 (from 3.5.1, IIRC), it was clearly "fake"
151 from a developer perspective in that all it did was take the desktop
152 pixel values and blend them with the application window pixel values, to
153 form a "fake" transparency that was actually simply duplication and
154 blending at the individual application window level. It was clearly
155 "fake" transparency from a user perspective as well, since it didn't
156 "see" any intervening windows between it and the desktop, like "real"
157 composite based transparency does.
158
159 That's a mistaken generalization of fact that a lot of people make.
160 konsole3 and kicker never had "real" transparency, no, it was all faked.
161 But kwin itself did, using the same xorg composite extension that kwin4
162 does for that and other non-OpenGL based effects. Zooming, drop-shadows,
163 the zooming based present-windows task-switcher and desktop-grid effects,
164 all these are composite based, using the /same/ xorg composite technology
165 kwin3 did, post 3.5.1, I believe was the version that introduced it.
166
167 >> But guess who was one of the big users of the bad code? Right, plasma.
168 >> Turns out that each plasmoid update was triggering a repaint, not for
169 >> that relatively small rectangular area, BUT FOR THE ENTIRE CONTAINER.
170 >> Now that's bad enough if it's a panel, but when that widget is on the
171 >> desktop, ITS THE ENTIRE DESKTOP! Of course, when it's a dynamically
172 >> updating plasmoid such as a temperature or CPU activity gauge, guess
173 >> what, you're now repainting the entire desktop at every update of that
174 >> plasmoid. And if there's several such plasmoids...
175 >
176 > they do nothing with recent enough graphics hardware :P
177
178 And you know why? It's because the graphics hardware accelerates the
179 repaint, and is smart enough to realize that the entire desktop doesn't
180 need repainted, despite the instructions it was handed. =:^) But qt's
181 still handing the hardware bad instructions. The hardware's just smart
182 enough to recognize and ignore the parts that haven't actually updated
183 and thus don't actually need repainted.
184
185 But of course not everybody has that level of hardware acceleration yet.
186
187 >> That's bad enough as it is, but when it's just the bare desktop, still
188 >> tolerable. But now consider what happens when that's being filtered up
189 >> thru multiple layers of semi-transparent windows! No *WONDER* people
190 >> with older or not well accelerated graphics cards are having issues!
191 >> And on a desktop the size of mine, say 1920x2200 after the panels top
192 >> and bottom are removed, still running on a vintage Radeon 9200, that's
193 >> a HUGE performance issue! No WONDER I was having problems with it!
194 >
195 > and now we are getting down to the interessting facts.
196 >
197 > The short version of all your text:
198 >
199 > 'I had tried some graphic demanding stuff, turned into a even bigger
200 > workload by a small programming mistake on hardware that was even
201 > considered slow and underpowered when it was released 6 years ago.'
202
203 May be, but that doesn't change the need to do the tweaks to fix the
204 problem, which was what the entire post was about. Given the problems
205 others have posted, it's likely to be helpful to them as it was to me,
206 and there's no reason they should have to do all the same work I did to
207 rediscover what I already know, after learning it the hard way.
208
209 >> But meanwhile, its the stack of bugs such as this, that really
210 >> shouldn't be appearing in an X.0 release let alone X.3, that's
211 >> distressing. And it's even /more/ distressing when support for the
212 >> previous very stable version is being dropped, before the current
213 >> version even gets up to normal X.0 version quality, let alone the X.1
214 >> that many wait for before they consider it safe to switch.
215 >
216 > you mean bugs that only hit when you use modern graphics on a 6 year
217 > old, slow even then, graphic adapter?
218
219 Could be, but regardless, there's people out there using such hardware,
220 and the posted information both explains how I discovered the issues, and
221 the workarounds and configuration tweaks necessary to get decent
222 performance anyway, despite the age and speed of the hardware.
223
224 --
225 Duncan - List replies preferred. No HTML msgs.
226 "Every nonfree program has a lord, a master --
227 and if you use the program, he is your master." Richard Stallman

Replies

Subject Author
Re: [gentoo-amd64] Re: Heads-up: KDEers: Particularly kde3-ers, BRM <bm_witness@×××××.com>