Terrible performance on Vista 64?

I’m using Jogl on Vista 64, and I’m getting a steady 20 fps, no matter what. First, I just tried calling display() in my main thread loop, with a Thread.yield() for good measure, and thought that was the problem, so I created an Animator and set it to run as fast as possible. However, no matter what I do, I get 20 fps, which sounds a lot as if the update is driven by some timer somewhere.

Now, at first I would suspect Vista, but I get the same problem on another machine running Windows XP SP2 32-bit.

I didn’t find anything obvious in the FAQ. What can I do to get rid of this limitation?

Btw: both machines I tried on are using various NVIDIA hardware and both are multi-core of some form.

Are they using Micro$ofts default drivers?

I know Vista was shipped with NVidia compatible drivers that only supported OGL1.0, and were extremely slow.
Not sure about XP.

I got about 32 FPS under Vista with my game which is known to use very very large datasets, I didn’t notice a particular slowdown under Vista.

Yes, I’m using the right drivers. Especially on XP!

This is not a data set size problem; the scenes are quite small. CPU usage is also negligible.

Other measurements:
JGears in full-screen gives me 20 fps; small window gives me 600 fps (probably a result of the compositing).
demos.hdr.HDR gives me 60 fps no matter what the window size (including 1600x1200).

So something I’m doing in my loop set-up causes the drawing loop to run on a timer. Does GLAutoDrawable.display() run off the WM_PAINT message? That could be being deferred.

Problem solved. I had an extra swapBuffers() inside the GLEventListener.display() function, and my program defaults to syncing to retrace. Now I have a steady 60 no matter what the window size. Thanks for looking!

Ok, so Vista64 is Ok then?

(because I’m actually thinking of building a new vista64 rig for home soon)

Yes. I’m using EasyEclipse and JOGL that I downloaded straight from the web sites, and they work fine. I also use some custom JNI code that I re-build in VS 2005 sp1 x64; that was quite simple as well.

Performance is OK, but I believe a native DX10 application would have better performance, because I believe OpenGL is forced to do copy-blitting even in full-screen. That’s a very small cost on my machine, though.

FWIW, the system I put together: Intel E6850, MSI P6N SLI, 2GB pqi CAS4 DDR2-800, eVGA GeForce 8800GT, 2x Raptor-150 (RAID-1). Windows Experience Index 5.7. And it can even play Crysis at interactive frame rates! Got it all from NewEgg, which I’m usually happy with.