[Xcb] state of xcb-glx
Ralovich, Kristóf
kristof.ralovich at gmail.com
Wed Apr 9 08:34:27 PDT 2008
Jeremy,
On Tue, Apr 8, 2008 at 2:24 PM, Jeremy Kolb <jkolb at brandeis.edu> wrote:
> Continuing as a top post for readability...
sorry about that, I will try to improve my style!
> If you are interested in seeing how the current xcb-glx works then run
> gears through indirect rendering. Note that not all GLX requests were
> xcb-ified.
I have experimented with Mesa built with xcb enabled, but I am not
sure if the correct, xcb-ified calls were used in my tests, so I will
have to put some tracing into mesa for that.
> As for packing GL render requests into the correct GLX infrastructure...
> I don't believe that's specified in the proto doc (check out the docs on
> opengl.org) but it may be specified somewhere else (might even be
> implementation specific, check out mesa). Regardless, you are going to
> need to poke mesa-devel.
My idea for this was mimicking the mesa behaviour for the wire
protocol for GL calls, but I am currently finding out more on this. I
am aware, that a large portion of code on this project would go into
Mesa and some updates to the xml protocol description.
> I'm a little confused as to what you are proposing. Is it a
> xcb_glx_util library of some sort that will replace glX or will you be
> mapping glX calls to xcb_glx calls?
OK, I was unsettled about this in my first letter and I was not enough
specific on this in my submitted proposal, so I will try to clear the
situation here: my first priority is to xcb-ify as many GL calls as
possible; then some kind of a xcb_glx_util would be useful to wrap
common tasks (eg. fb config choosing) in a more user friendly way. If
the previous two are finished, the next step would be examine and if
possible implement a glX wrapper that is capable to work in parallel
with xcb-glx, just like the xcb-ified libX11.
Kristof
> Jeremy
>
>
>
> On Tue, 2008-04-08 at 13:05 +0200, Ralovich, Kristóf wrote:
> > Bart,
> >
> > I have put together my proposal and submitted it last night, see
> > below. I would like to ask for any comments about it.
> >
> > Thanks,
> > Kristóf
> >
> > ---
> >
> > Applicant:
> >
> > Ralovich, Kristóf
> >
> > Contact:
> >
> > kristof.ralovich at gmail.com
> >
> >
> >
> > Project Title:
> >
> > Enhancing xcb-glx for wider usability
> >
> > Synopsis:
> >
> > XCB is advertised to bring small footprint, latency hiding, improved
> > threading support. OpenGL is a high performance graphics API. Xcb-glx
> > has the potential to efficiently connect these two worlds. To the best
> > of my knowledge xcb-glx has not yet achieved general availability and
> > is only operating with indirect Mesa rendering, so the main issue
> > seems to be that xcb-glx lacks support of OpenGL calls.
> >
> > This proposed project is aiming to investigate and implement support
> > of direct rendering using Mesa and — if possible as an opensource work
> > — any other proprietary OpenGL implementation layered over the xcb-glx
> > API.
> >
> > Benefits to Community:
> >
> > The successful integration of xcb-glx underneath Mesa (or any other
> > arbitrary OpenGL implementation) has several key benefits:
> > - potentially lower latency and faster OpenGL operation through XCB
> > - one lesser software stack using the legacy Xlib API - a great pace
> > in transition.
> >
> > Deliverables:
> >
> > The goal is to produce hardware accelerated direct rendering OpenGL
> > implementation using xcb-glx (and Xlib being eliminated completely)
> > that would correctly run all the applications from Mesa's
> > progs/xdemos.
> >
> > The actual development would be incremental: introducing support for
> > OpenGL calls one-by-one and throughout testing with real world test
> > cases (eg.: Mesa demos).
> >
> > Proceeding of the project will be continously auditable, a blog
> > (http://kristofralovich.blogspot.com) will be dedicated with weekly
> > updates of the situation, furthermore the code will be available
> > through a public repository at all times.
> >
> > A technical report paper will be written as a summary of the
> > achievements and project results.
> >
> > Timeline:
> >
> > - till May 26: Developing a *deeper understanding* of the problem with
> > the help of the authors of the exsisting xcb-glx integration. Shaping
> > an *own development environment* and evaluating the exsisting
> > codebase, aiming to separate living bugs/issues that are not related
> > to the project, submitting bug reports (about the X server, etc).
> > - till July 7: Put down the *architectural foundations* to add support
> > of OpenGL calls over xcb-glx to Mesa, first direct rendering test
> > program (only using eg.: glClearColor() and glClear) to run as a
> > *proof of concept*.
> > - till Aug 18: *Implement* the largest possible subset of OpenGL calls
> > over xcb-glx. At this point applications from progs/xdemos shall run.
> > If feasible, patch MesaGLUT to link against xcb-glx.
> > - till Sept 1: Overall *cleanup* of the delivered code, aiming
> > production quality to be committed back to xcb-glx and Mesa. Compiling
> > a *paper* from the entries of the development blog.
> >
> > Related work:
> >
> > Previous work was not easy to trace, public mailing list archives and
> > the actual Mesa and xcb-glx sources held scattered information:
> > - http://lists.freedesktop.org/archives/xcb/
> > - http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-dev
> > - http://gitweb.freedesktop.org/?p=xcb/libxcb.git
> > - http://gitweb.freedesktop.org/?p=xcb/proto.git;a=summary
> > - http://gitweb.freedesktop.org/?p=mesa/mesa.git;a=summary .
> > Main author of the exsisting codebase is Jeremy A. Kolb.
> >
> > Biographical Information:
> >
> > I am Kristóf Ralovich, attending to an MSc program in computer science
> > at Budapest University of Technology and Economics. I have a passion
> > to OpenGL and general programming, so far only having experience from
> > the user side of the API. I have a 5 years background in C++. For
> > further details about me please see my CV at
> > http://gordius.iit.bme.hu/~tade/kristof_ralovich_cv_2008_04_08.pdf .
> >
> > This project would give me an insight of the low-level details of GLX
> > and Mesa. My motivation comes from seeking for advancement in
> > technology I use every day and the possibility to produce value useful
> > to other people too.
> >
> > During the summer I am confident I will be able to commit 32 hours a
> > week for this project, besides I will have a contract to my university
> > faculty involving 40 hours of work a month!
> >
> > ---
> >
> >
> > On Mon, Apr 7, 2008 at 6:28 PM, Barton C Massey <bart at cs.pdx.edu> wrote:
> > > In message <5712ce4f0804070731o468511b7j175345f8427d959e at mail.gmail.com> you wrote:
> > > > I would like gain some knowledge about the official state of the
> > > > xcb-glx library.
> > >
> > > As far as I know, no one has used it for a "real"
> > > application.
> > >
> > >
> > > > I have done some experimentation too based on the previous
> > > > examples using different machines and never managed to get any correct
> > > > GL rendering, some of the time even the X server crashed.
> > >
> > > Please file bug reports against the server for these. They
> > > represent potential security problems.
> > >
> > >
> > > > So my question is, if direct rendering using xcb-glx is possible,
> > > > would there be a chance to enhance it as a Google Summer of Code
> > > > project? Here is a list of my thoughts about the subject:
> > > > - debug and fix xcb-glx, to fix server crashes
> > > > - implement the glX API over xcb-glx (AFAIK, this is done too in mesa
> > > > for the indirect case)
> > > > - extend the protocol description for xcb-glx to support as many GL
> > > > extensions as possible.
> > > > If this is not enough for a GSoC, I am open to work on related issues!
> > >
> > > Definitely a reasonable XCB GLX project could be put
> > > together. You don't want to try to get away from Mesa, I
> > > think; that would be really hard. This sounds like plenty
> > > of work to me.
> > >
> > >
> > > > The GSoC application deadline is tonight, so the time
> > > > frame is very short.
> > >
> > > A huge understatement. See what you can get together.
> > >
> > > Bart
> > >
> > _______________________________________________
> > Xcb mailing list
> > Xcb at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/xcb
>
>
More information about the Xcb
mailing list