Archive for November, 2007

GLEW and Multi-Context

25. November 2007

I’ve just finished integrating GLEW into Equalizer, and it is really nice. Finally a software which is designed properly, so it can be used in a multi-context, multi-threaded environment with no hacks needed.

During the integration I could throw out my own rudimentary, GLEW-like ‘NIH’ extension handling. And the usage of extensions with GLEW is much nicer. Now porting eVolve to Windows should be a piece of cake!

Parallel OpenGL FAQ

16. November 2007

I’ve started a FAQ about issues related to using OpenGL in multithreaded programs. I felt this is useful to address some of the common questions, especially now that more and more people have multicore and multi-GPU machines.

It does not cover clusters so far in order to keep it simple and not to (Equalizer-)specific. I might add a cluster section later, though.

Comments are welcome. I hope to grow this FAQ into a valuable resource for everybody doing OpenGL programming.

My first OpenMP code…

13. November 2007

…well, the first one I’ve written myself.

I’ve spent some time on trying to optimize the RLE-like image compression used for network transfer of frame buffer data in Equalizer. After fiddling a couple of hours with SSE2 and not getting anywhere, I gave OpenMP a shot.

Turns out the parallelization was quite easy, but only gains 20-30% on a dual-core machine with gcc 4.2. There should be some room for improvement, but it’s a first step and now the code runs at >700 MB/s compression rate on a 2.16 GHz Core2 Duo.

For the curious: here is the change. Maybe there is an OpenMP crack out there who wants to beat my implementation. 😉

Parallel Ogre3D is coming…

12. November 2007

…see here: Preview of Ogre integrated with Equalizer.