Re: Some perspective from the cheap seats...
David Dawes <[email protected]>
| Newsgroups | gmane.comp.xfree86.forum |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Mar 21, 2003 at 04:38:21PM -0500, Mark Vojkovich wrote: >On Fri, 21 Mar 2003, Egbert Eich wrote: > >> Havoc Pennington writes: >> > IMHO, one thing X.org should do if it wants to reimagine itself is >> > expand to include toolkit/desktop level concerns and establish >> > contacts with toolkit and desktop developers. X should really be >> > developed to meet the needs of the UI, not the other way around. That >> > goes from the top down: user -> apps -> desktop -> toolkit -> X -> OS. >> > >> >> Havoc, >> >> I do agree with you. However you most not neglect issues t >> hat are not immediately visible from the UI point of >> view: you have to consider how you can map a funtionality >> you propose onto the HW. >> >> In the past this has not always been taken into consideration. >> I hope Mark Vojkovitch will give more details on this but >> to give you two examples: >> >> * Alpha blended cursors have been added with no consideration >> for OpenGL. >> >> * The RENDER extension is nearly impossible to accelerate fully. >> >> Egbert. > > The cursor issue was fixed a the last minute, so were some >other problems, but some problems still remain. In fact, part >of 4.3's delay was due to regressions caused by the RandR >extension not getting fixed in a timely matter. > > The fact of the matter is that few people realize the implementation >issues involved in some of these features. End users say >they want a particular feature, but specify things in a way that >is nearly impossible to implement or implement efficiently. > > Things like RandR really require radical driver model modifications >to implement in a non-hackish way. Implications to OpenGL or Xvideo >still aren't entirely clear. This can't happen overnight as everything >needs to fit together coherently and this is alot of work, and work >that can't really be done by people who don't have experience in >these areas. In some cases features were added without sufficient >considerations. Desktop people pretty much got to pick their dream >interfaces with RENDER but this leaves driver people scratching their >heads as to what they're expected to do about it. Concerns about >the useability of the current design were expressed by people like >Thomas Roell from XiG and myself. I suppose someday people will >be complaining that RENDER is too slow and blame the XFree86 project >for this, though it was really the consequence of end users having >too much control. That one has been puzzling me for a while. I recall when the RENDER extension was first being discussed that one of the motivations for it was to expose hardware functionality. At the time, Carsten's Enlightement was doing similar things, but handled entirely on the client side. Yes, there are other benefits from having a RENDER extension, but its seems that the purpose of exposing more hardware functionality got lost somewhere along the line. I think this does show a fundamental difference between the guys on the desktop side and the traditional XFree86 developers. The former seem like CS types, only really interested in software solutions, while the latter tend to be more engineering types who care a lot about getting as much out of the hardware as possible. I definitely fall into this second category. Anyway, I recall in Thomas Roell's discussion about RENDER that he did find significant performance benefits to accelerating it, once he figured out a reasonable way to do it (and he is no slouch so the fact that it took him several attempts to do it speaks volumes). Thomas and XFree86 are pretty much competitors in some market segments, and I find it a little disturbing that a competitor is getting significantly better performance out of an extension that originated here. Actually, I find it a little embarrasing when someone asks me about a solution that requires the best possible render performance and I have to say "well, ours isn't accelerated, so you'll have to go to XiG". It's easy to say "fast enough" is "good enough", but "fast enough" can depend a lot on the eye of the beholder. > Another example. Initially alpha blended cursors were added >without considerations to the fact that software sprites aren't >compatible with OpenGL direct rendering. Workarounds are now Yes, this seemed to stem from a rather complete demonstration of ignorance about the functionality available in modern hardware. I hope these observations provide another perspective on the differences between the two factions here. I really get the impression that a lot of what is happening now is an attempt at making XFree86 a single-purpose product. XFree86 has never had such a narrow focus, and doing so now would be very short-sighted. David -- David Dawes Release Engineer/President The XFree86 Project www.XFree86.org/~dawes