On 10/05/2016 05:35 PM, Sylvain Munaut wrote:
> Hi Marcus,
>
>> GL.glCallList(self._grid_compiled_list_id)
>> File "/usr/lib/python2.7/dist-packages/OpenGL/error.py", line 208, in
>> glCheckError
>> baseOperation = baseOperation,
>> OpenGL.error.GLError: GLError(
>> err = 1285,
>> description = 'out of memory',
>> baseOperation = glCallList,
>> cArguments = (3L,)
>>
>>
>> They have an older system, with 2G of memory, but with 12G of swap.
> RAM doesn't matter.
>
> This is merely a reflection of buggy OpenGL drivers.
> Display Lists are an outdated OpenGL feature that's most likely never
> ever tested in any modern driver and so my guess is that they leak
> resources when regenerating it and at somepoint they run out of
> something ...
>
> Try the patch below. It effectively disables the use of display list
> and just issues all the commands every draw ... which for any kind of
> modern GPU should really not be a problem.
>
>
> diff --git a/gr-wxgui/python/wxgui/plotter/plotter_base.py
> b/gr-wxgui/python/wxgui/plotter/plotter_base.py
> index ca90490..c4dbd26 100644
> --- a/gr-wxgui/python/wxgui/plotter/plotter_base.py
> +++ b/gr-wxgui/python/wxgui/plotter/plotter_base.py
> @@ -49,20 +49,14 @@ class gl_cache(object):
> To be called when gl initializes.
> Create a new compiled list.
> """
> - self._grid_compiled_list_id = GL.glGenLists(1)
> + pass
>
> def draw(self):
> """
> Draw the gl stuff using a compiled list.
> If changed, reload the compiled list.
> """
> - if self.changed():
> - GL.glNewList(self._grid_compiled_list_id, GL.GL_COMPILE)
> - self._draw()
> - GL.glEndList()
> - self.changed(False)
> - #draw the grid
> - GL.glCallList(self._grid_compiled_list_id)
> + self._draw()
>
> def changed(self, state=None):
> """
>
>
> Cheers,
>
> Sylvain
Thanks!
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
No comments:
Post a Comment