Discussion:
Programme slow due to OpenGL
(too old to reply)
s***@gmail.com
2013-11-20 15:04:41 UTC
Permalink
Hi

I am new to this, and I am updating some old SW. It works on XP but there is a problem on W7 with some grapich cards - such as ATI.

I have tracked the problem down to 3 lines, which comes in 2 forms:

glDeleteLists(100, MAXINT - 100);
// used when reloading, eg new show/product/design

glDeleteLists(0, MAXINT);
// used only in destroy


These take about 22 seconds to complete on my test computer (on mine it works fine) but in some cases (other computers) the time can change (another one gives me only 12-13 seconds)


Now, as I understand it, the first is an ID?

I tried to see how they are created - but I cannot see to find

Can anyone give me some hints here?

WBR
Sonnich
Alberto Luaces
2013-11-20 15:19:40 UTC
Permalink
Post by s***@gmail.com
Hi
I am new to this, and I am updating some old SW. It works on XP but
there is a problem on W7 with some grapich cards - such as ATI.
glDeleteLists(100, MAXINT - 100); // used when reloading, eg new
show/product/design
glDeleteLists(0, MAXINT); // used only in destroy
These take about 22 seconds to complete on my test computer (on mine
it works fine) but in some cases (other computers) the time can change
(another one gives me only 12-13 seconds)
Now, as I understand it, the first is an ID?
Yes; and the second number is the count of Lists to delete. Obviously,
MAXINT could be too much. It seems like a hack to avoid doing the
bookkeeping of already created display lists.
Post by s***@gmail.com
I tried to see how they are created - but I cannot see to find
Can anyone give me some hints here?
Look for GL_COMPILE or GL_COMPILE_AND_EXECUTE, calls to glCallList,
glCallLists, glDeleteLists, glGenLists...
--
Alberto
s***@gmail.com
2013-11-20 15:21:18 UTC
Permalink
Post by s***@gmail.com
Hi
I am new to this, and I am updating some old SW. It works on XP but there is a problem on W7 with some grapich cards - such as ATI.
glDeleteLists(100, MAXINT - 100);
// used when reloading, eg new show/product/design
glDeleteLists(0, MAXINT);
// used only in destroy
These take about 22 seconds to complete on my test computer (on mine it works fine) but in some cases (other computers) the time can change (another one gives me only 12-13 seconds)
Now, as I understand it, the first is an ID?
I tried to see how they are created - but I cannot see to find
Can anyone give me some hints here?
I should add, that the first 2 times (during programme startup when setting some components properties) it does not take much time for this'

glDeleteLists(100, MAXINT - 100);

When loading a new file, and by that doing this once it will be slow

The same component is in another window, and that it always slow. The time used is stable as of now 22 seconds.

WBR
Sonnich

Loading...