Multithreading for 3D Graphics

Posted by Kaya Kupferschmidt • Thursday, June 23. 2005 • Category: OpenGL
A very hot and interesting topic in 3d graphics is multithreading. I am thinking for a long time about seperating rendering and simulation by using two threads - the advantage would be that the simulation could take place while the graphics card is busy. Plus the system would take advantage of modern computers that offer Hyperthreading, dual core CPUs or simply two or more CPUs.

On the other hand a lot of problems concerning integrity and synchronisation arise in multithreaded systems which rise the complexity of the overall design by a magnidude. That's just the reason why I did not implement this feature yet, but currently I am thinking about preparing some core components of the 3d graphics and scenegraph module of Magnum for multithreaded usage.

Of course there are already 3d libraries which offer such features, one of the very advanced renderers is OpenSG which in turn is the API I am currently working with at my current client. A very nice feature of OpenSG is the ability of clustering, that is you can render the same scene on more than one computer in a rather transparent way. This feature is extremly useful for driving powerwalls or caves. Multithreading might be a first step in this direction, I'd really love to see Magnum supporting clustering. That would be something very outstanding and special, although only useful in some special scenarios.

Don't expect results within the next days, but stay tuned anyway. I will work on that idea in my spare time.

Status update

Posted by Kaya Kupferschmidt • Wednesday, June 15. 2005 • Category: General
I really feel somewhat bad that I didn't find the time to post a new entry for over a month now. But I am really busy at the moment.

First of all I currently work for a small company which is specialised in creating software for high-end visualisation and VR systems. Unfortunately I am not allowed to tell much about my work there.

Second I have to do a lot of work at home as I am working as a freelancer at the moment. I am preparing a new webpage for my one-man company dimajix and I have to produce a lot of paper-stuff and try to get new customers. Fortunately at least my new webpage will be finished soon and it will have a far more professional look-and-feel.

Last my girl-friend (or should I say now fiancee) and me plan to marry in september this year, here again we already have to plan a lot, make the invitations, care about the ceremony etc.

Due to all these activities (plus I try to get on my bike when I find some time) unfortunately I did not find much time for working on Project Magnum, for making up new OpenGL demos or simply to post a new entry to my blog. But as some jobs finally get done, I hope that I will find some more time again soon.

Kaya

A Simple Sidebar