ATI and TestContextDestruction slowdown

With Jogl 1.1b7 (since 1.1b5),
with an ATI card ( 9600, 9700, 9800),
on a Windows computer,
when create and destroy GlCanvas multitime, like the TestContextDestruction, the drawing in slowdown dramaticaly.

This bug seem to be correlated with the topic:
http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=jogl;action=display;num=1102887360

One New things, the problem doesn’t happen with Jogl1.1b4,
but come from the Jogl 1.1b5.

Have you any idea ?

The slowdown with the TestContextDestruction demo appears with all vendors’ cards on all platforms I’ve tested on. I don’t know whether this is a bug in JOGL’s OpenGL context handling or just poor behavior of OpenGL drivers which aren’t used to creating and destroying that many OpenGL contexts per process.

You might want to try specifying -DATI_WORKAROUND=true with the 1.1 b07 build, which should improve stability with ATI’s drivers. The associated code path will be enabled earlier in the initialization process in 1.1 b08 so you shouldn’t have to specify that property any more as of that release.

With JoGL 1.1 b7 and using the -DATI_WORKAROUND=true doesn’t change any things.

The change in JoGl code appear between the b4 and b5.
What was the change ?

If you take a look on this thread, you can see the changes in each of the JOGL betas. 1.1 b04 first introduced the OpenGL context destruction code. 1.1 b05 seems to have only added minor bug fixes.

NO the b5 have a big difference in WindowsGLContextFactory, Look at the code completly different.

The note you do:
JOGL 1.1 beta 05 has been released on August 4, 2004; please see the Documents & files section of the JOGL web page. This release contains the following changes:

* A significant bug fix from user GKW here on the forums relating to pixel format selection on Windows. In order to access more advanced features like full-scene antialiasing on Windows, it is necessary to create a dummy OpenGL context to be able to access wglChoosePixelFormatARB and associated functions. GKW redesigned the process by which JOGL creates this dummy context to fix a race condition and to be more compatible with older graphics cards and drivers. This should address many stability issues in particular on older Windows machines.

I think this part of code introduce a drawback on ATI.

I tried 1.1 b04 and the TestContextDestruction demo on two machines, a laptop with an NVidia chip and a desktop with an ATI Radeon 9800 Pro. The laptop won’t run the TestContextDestruction demo properly with that version, though it runs with the current JOGL; bugs have been fixed in the context creation and destruction code since b04. The desktop, after specifying -DATI_WORKAROUND=true, exhibits the same slowdown with 1.1 b04 that you report with 1.1 b05. If you look back at the release notes for 1.1 b04 on the “JOGL release information” thread, the slowdown was noted there.

If you have a particular test case that seems to be affected with 1.1 b05 then please file a bug and attach the test case. Otherwise, this is a behavior I can’t reproduce.