Re: acceleration
"Patrick Shirkey" <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <[email protected]> |
On Wed, October 3, 2012 10:03 am, Henry (Yu) Song - SISA wrote: > Hi, Patrix > > The answer to your question is YES, cairo runs on Opengl and Opengl es 2.0 > (no gles 1 though). I might be able to help you more if you can give me > more info on your gl driver. Is it open source intel, radeon, nouveau > driver? it is ATI fglrx driver or NVidia unified driver? Are you running > on embedded device with Opengl es 2, what is the embedded GPU/driver? > The machine I am developing on is running the nouveau driver and the device is NVIDIA Corporation G96 [Quadro FX 580] I have tested the cairo_gl_surface example code on this machine and it loads the gears example and various clutter examples too. I porting an app from that other os to Linux and I would like to be able to reuse the existing opengl code so it looks like cairo_gl_surface is the way to go for that task as I have been told clutter only has support for gles. My options at the moment are: 1: Port the cairo_gl_surface example from c to python3 2: Port the existing opengl to gles and load in clutter 3: Reimplement the existing opengl code as clutter/cogl I would prefer to do 1 but at the moment the only code I can get to run in python is the clutter examples so I have to make a decision. Patrick > They are all different. > > Henry > ________________________________________ > From: [email protected] > [[email protected]] on behalf of > Patrick Shirkey [[email protected]] > Sent: Tuesday, October 02, 2012 4:25 PM > To: [email protected] > Subject: Re: [cairo] acceleration > > On Wed, October 3, 2012 9:10 am, Henry (Yu) Song - SISA wrote: >> I am not sure your question. acceleration in gl driver? or acceleration >> using gl-backend vs. image-backend in cairo? >> > > According to wikipedia cairo "uses acceleration when available". So as > that is rather vague I need to prove or disprove that cairo will use the > GPU for 2d acceleration for the image-backend. My experience with cairo on > gtk2 suggests that the computations are handled by the cpu unless > explicitly requested to use cairo_gl_surface. > > >> if you want to use gl backend, create cairo_gl_surface instead of using >> cairo_image_surface. Again, the performance of cairo_gl_surface vs. >> cairo_image_surface depends on your gl driver quality as Chris said. >> > > Thanks, does cairo_gl_surface work with all opengl or only opengl es ? > > >> Henry >> ________________________________________ >> From: [email protected] >> [[email protected]] on behalf of >> Patrick Shirkey [[email protected]] >> Sent: Tuesday, October 02, 2012 3:46 PM >> To: [email protected] >> Subject: Re: [cairo] acceleration >> >> On Tue, October 2, 2012 9:39 pm, Chris Wilson wrote: >>> On Tue, 2 Oct 2012 21:25:43 +1000 (EST), "Patrick Shirkey" >>> <[email protected]> wrote: >>>> >>>> On Tue, October 2, 2012 9:16 pm, Chris Wilson wrote: >>>> > On Tue, 2 Oct 2012 15:35:38 +1000 (EST), "Patrick Shirkey" >>>> > <[email protected]> wrote: >>>> >> Hi, >>>> >> >>>> >> Is there a simple test to know if cairo is using acceleration or is >>>> it >>>> >> just a matter of running a desktop with glx? >>>> > >>>> > Cairo dodges the complicated question of how to setup the rendering >>>> > pipeline leaving that to the application/toolkit. So in order for >>>> cairo >>>> > to use GL, the application must create a set of output Windows >>>> > compatible with GL and pass those and the context to cairo to use. >>>> The >>>> > degree of acceleration then depends upon the quality of the driver >>>> and >>>> > the style of rendering. In short, do not expect to switching to >>>> cairo-gl >>>> > to be an easy task to get fast rendering. >>>> >> >> >> In terms of 2d acceleration how would I know if cario is using the GPU >> or >> CPU? >> >> >> >> >>>> Thanks Chris. >>>> >>>> Is the recommended approached to use cogl directly, cairo or clutter? >>> >>> Use the appropriate tool to hand :) >>> >>> Clutter is excellent for controlling animations and emergent behaviour. >>> Cairo offers a simple means for describing a page layout (or parts >>> there >>> of). >>> Cogl aims to make using OpenGL simpler and more portable, with a few >>> additional smarts. >>> >>>> FYI, I am using python3 with gtk3 and so far the only code I have been >>>> able to make work with this combination are the clutter examples. >>>> >>>> I have some existing opengl. I am looking at either porting it to >>>> cogl/clutter or if there is a way to load it directly with cairo that >>>> I >>>> have yet to come across. >>> >>> If you are starting from OpenGL, probably easier to go to clutter+cogl. >>> Cairo comes into its own for having a higher level description of paths >>> and shapes, but if you already are well versed in translating into >>> OpenGL, then you probably do not need Cairo and will probably be better >>> to avoid the impedance mismatch between the PDF rendering model and >>> OpenGL. However, if Cairo makes your design and maintenance easier, >>> have >>> fun! >>> -Chris >>> >>> -- >>> Chris Wilson, Intel Open Source Technology Centre >>> >> >> >> -- >> Patrick Shirkey >> Boost Hardware Ltd >> -- >> cairo mailing list >> [email protected] >> http://lists.cairographics.org/mailman/listinfo/cairo >> > > > -- > Patrick Shirkey > Boost Hardware Ltd > -- > cairo mailing list > [email protected] > http://lists.cairographics.org/mailman/listinfo/cairo > -- Patrick Shirkey Boost Hardware Ltd -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo