Re:FW: XFree86 future
Mark Vojkovich <[email protected]>
| Newsgroups | gmane.comp.xfree86.forum |
|---|---|
| Message-ID | <[email protected]> |
On Sun, 23 Mar 2003, Lukas Molzberger wrote: > > Don't worry, we're not planning on getting rid of the client-server > >model any time soon. David Wexelblat is correct in the sense that > >the majority of people do not need it, but it's definitely the case > >that some people find it essential. Not only that, I disagree with him. > >I think direct rendered 2D has little to no benefit. > > > > > > If direct rendered 2D would bring little to no benefit why then is the > performance of direct rendered 3D under XFree so much better than the 2D > performance. Many people argued that the device drivers are to blame for the > bad 2D performance but I would think that it is a much harder problem to get > the 3D part of the graphics driver right than it is to get the 2D part right. The main cause of 2D performance problems in my opinion is apps that are poorly written. Next would be that some of the operations the more modern apps would like to do aren't supported in the core X11 primitive set so they end up doing them in software and copying the result with PutImage. The RENDER extension was designed to remedy this, but it's the case that the RENDER extension isn't accelerated on most hardware and there are definitely things you can do in RENDER that are not likely to ever be accelerated. > I'm certain that network transparency together with the ancient X11 API's are > a large part of the problem of the XFree project. I've worked on several > projects where network transparency was involved and it allways made the > projects much more complex and made it almost impossible to get a satifactory > realtime performance. I've not see the protocol be a significant issue for most 2D rendering. It is for PutImage, but that's why the shared memory extension was created and that fixed the problem. > You seem to agree that most people don't need network transparency and I'm > sure that is the case since at least 95% of the (Windows) desktop users seem > to be happy without this feature. For the rest of the people who really need > it there is VNC. The biggest advantage of VNC is that it doesn't add any > additional complexity to the core graphics system. It's also integrated in > the KDE desktop, its available for GNOME and Windows. VNC's perfomance is > also ok. I think that it solves at least 90% of the problem that the minority > of users have who need to work remote on computers. > There was often the argument that X11's API would never have to be rewritten > since you can just add another extension if you need a new feature. I think > this is a big mistake in the long term. It leads to dublicate and > inconsistent API's. It makes it more difficult for the developer who wants to > use these API's to find the right way to use them. Which then leads to hacks > and bugs. It's also very difficult to optimize such an API for more > perfomance. > All these problems make XFree a very complex project. It's very hard for a new > contributor to dig through the XFree sources and to understand them to a > degree where he can make a meaningful contribution. I think that this > unecessary complexity is the most important reason as to why there are so few > contributors for such an important project. I think that David Wexelblat is > absolutely right and that Linux desperately needs a direct-rendering model if > it wants to be successful on the desktop. I completely disagree. You think indirect rendered 2D is complex? Wait until you see direct rendered 2D. Direct rendered 2D won't fix any of the major problems with the ways apps are handling expose events. It will likely only make them worse by introducing synchronization problems. The protocol is totally not the reason why things like resizing Mozilla seems so slow. Mark.