|
|
|
|
|
by magicalhippo
1384 days ago
|
|
I've seen the NVIDIA driver eat up all the CPU on multiple cores without really doing anything substantial to the framerate. This was back in the Windows XP days when I was working on OpenGL and DirectX. It would do this while rendering like a couple of triangles. One core I could understand, but not all. I'm pretty sure the driver had some spinlocks in there. I also managed to find out the NVIDIA driver assumed user buffers passed to OpenGL (VBOs) would be 16-byte aligned, using aligned SIMD operations on them directly, even though there's no mention of alignment in the OpenGL spec. It just so happened that Microsoft's C++ runtime would do 16-byte aligned allocations, while the language I was using only did 4-byte. All is fair in love and performance wars I suppose... |
|