Interleaved arrays

I have a problem with interleaved arrays and it is that Voodoo video cards are actually slower when I use them.

I have benchmarked my code with standard calls (glBegin/glVertex3f/glEnd) and with interleaved arrays. My Voodoo 3 can be up to 50% slower with interleaved arrays than it is with immediate calls. The odd part is that the same code will be 43-46% faster on a GeForce.

FYI - My array only sends the data that I use (meaning that I don’t send color information if it isn’t being used) so it isn’t that I am needlessly sending data to OpenGL.

Has anyone else seen this problem and what video cards does it affect?

Do you have any tips for me that might help the situation?


I would say the odd part is that it’s running 50% slower on your Voodoo card. My first impression is that the drivers for your Voodoo is not so good (when it comes to interleaved arrays that is). If it’s running way faster on a GeForce, you are obiously not doing anything wrong.

Either try newer drivers, or shout at 3dfx to write better drivers.

I have the latest drivers for the Voodoo3 but of course they are beta drivers since 3DFX has been miserable in their support of Win2K.

I also have a GeForce256 running on a Windows 2000 machine and it is considerably faster - as in nearly 5 times as fast with the same code. I know that a good portion of that is the hardware T&L, at least I assume that it is, but I had an odd thing happen with the GeForce.

I originally bought the card for my primary development machine (a dual pentium running Win2K) but the OpenGL performance was miserable. I kept trying new beta drivers from NVidia and it never got any better. When I say bad, I mean that I was getting less than 1 FPS and the OpenGL screen savers moved so slowly that you could almost seen them being drawn.

I took the card out of that machine and put it in my secondary development machine - a single Athlon running at 800MHZ. Using Win2K and the same drivers, the OpenGL performance went through the roof.

The only obvious difference is the dual versus single cpu and I really doubt that the difference between AGP2x and AGP4x would account for my FPS going from less than 1 FPS to peak FPS of over 300 FPS.

So my question is, has anyone gotten a GeForce to run in a dual processor box with Win2K and had good OpenGL performance?

I had read somewhere that some drivers do not even consider the existence of dual processors and as a result they can have problems with resources and locking, etc. I have no idea why but I would like to understand what causes this to happen.

My goal is to trash the Voodoo3 and put the GeForce back in my dual cpu box but I won’t do it if I still get the same performance.

I know this was off topic, but it is something I have been struggling with for months.