[GEM-dev] sharing texture between process

Antoine Villeret antoine.villeret at gmail.com
Mon Oct 27 19:30:36 CET 2014


yes
with code from Git, I got "Direct Rendering enabled!" posted on window creation.
by changing GL_TRUE to GL_FALSE in gemglxwindow.cpp:303 [1] I don't
get this message again but the FPS stay at 60fps
(@Cyrille : with pixel_liquide2_57.pd, 1920x1080, framebuffer rendering)

Moreover according to [2], Nvidia's driver are using GLX not DRI but I
can't verify this yet.
Note that the repo contains an example on how to share texture between
2 process on embedded hardware (EGL) using DRI, maybe this note only
apply to embedded Nvidia's driver.

+
a

[1] : https://github.com/avilleret/Gem/blob/master/src/Output/gemglxwindow.cpp#L303
[2] : https://github.com/pcwalton/linux-drm-sharing-test/blob/master/README
--
do it yourself
http://antoine.villeret.free.fr


2014-10-27 19:17 GMT+01:00 Cyrille Henry <ch at chnry.net>:
> how did you get hardware acceleration without DRI?
>
> cheers
> c
>
> Le 27/10/2014 18:04, Antoine Villeret a écrit :
>
>>
>> why ? how huge ?
>>
>> I understand that direct rendering could improve performances but
>> I can run very GPU expensive patchs you made without direct rendering
>> and without noticable difference.
>>
>> So it may be worth a try...
>>
>> a
>> --
>> do it yourself
>> http://antoine.villeret.free.fr
>>
>>
>> 2014-10-27 11:11 GMT+01:00 Cyrille Henry <ch at chnry.net>:
>>>
>>>
>>>
>>> Le 27/10/2014 10:41, Antoine Villeret a écrit :
>>>>
>>>>
>>>> hello,
>>>>
>>>> since texture sharing seems to work between context inside one Gem's
>>>> instance, I'm now wondering how we can introduce texture sharing
>>>> between process.
>>>> According to [1], texture (and more generally display list) can be
>>>> shared between process if direct rendering is disabled and process are
>>>> using the same X server.
>>>> If I understand correctly, the only thing to do is to share the
>>>> display list structure over process.
>>>> Could we use shared memory to do that ?
>>>>
>>>> I look into the [gemglxwindow] and [gemglutwindow] code and it looks a
>>>> bit obscure to me, it uses advanced C++ idioms (PIMPL for the former
>>>> and CALLBACK4WIN for the latter) that I don't understand well yet. So
>>>> I want to know if this texture sharing between process is feasible
>>>> before going deeper.
>>>
>>>
>>>
>>> direct rendering disable?
>>> that's look like a huge problem...
>>>
>>> cheers
>>> c
>>>
>>>>
>>>> Cheers
>>>>
>>>> Antoine
>>>>
>>>> [1] : https://www.opengl.org/sdk/docs/man2/xhtml/glXCreateContext.xml
>>>> --
>>>> do it yourself
>>>> http://antoine.villeret.free.fr
>>>>
>>>> _______________________________________________
>>>> GEM-dev mailing list
>>>> GEM-dev at lists.iem.at
>>>> http://lists.puredata.info/listinfo/gem-dev
>>>>
>>>
>>> _______________________________________________
>>> GEM-dev mailing list
>>> GEM-dev at lists.iem.at
>>> http://lists.puredata.info/listinfo/gem-dev
>>
>>
>



More information about the GEM-dev mailing list